Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Objek dalam C#

Objek dalam C#

王林
王林asal
2024-09-03 15:04:20400semak imbas

Artikel berikut menyediakan garis besar untuk Objek dalam C#. Seperti yang telah diketahui, C# ialah bahasa pengaturcaraan berorientasikan objek dan disebut sebagai C Sharp. Walaupun C# telah berkembang daripada C++, kedua-duanya membezakan antara satu sama lain. Perbezaan asas boleh difahami melalui C++ vs C#.

Objek ialah contoh kelas. Di sini memori diperuntukkan secara dinamik untuk menyediakan output program tertentu. Jadi, bagaimanakah kita boleh menerangkan peruntukan dinamik ini? Objek dicipta untuk mengakses fungsi atau pembolehubah berbeza yang ditakrifkan di bawah kelas. Jadi, objek tidak tahu jenis data mana yang sebenarnya akan diakses. Jadi selepas mendapat nilai daripada elemen yang diakses, ia akan menyusun memori secara dinamik.

Mencipta Objek

Secara umumnya, objek boleh dibuat dalam 2 cara. Salah satunya ialah dengan menggunakan arahan “baharu”.

Sintaks umum untuk objek adalah di bawah:

Class-name object-name = new Class-name();

Dan kemudian, dengan menggunakan nama objek, kita boleh mengakses kaedah dan pembolehubah masing-masing yang ditakrifkan di dalam kelas.

Cara lain untuk mentakrifkan objek adalah dengan merujuk kepada objek lain. Sesuatu seperti memberikan nilai.

Kod:

Class-name object-name1 = new Class-name();
Class-name object-name2;
Object-name2=object-name1;

Dan kita boleh mengakses pembolehubah dan kaedah dalam kelas menggunakan objek object-name1 dan object-name2.

Contoh Objek dalam C#

Di sini kita akan mempunyai satu contoh untuk setiap cara mencipta objek dalam C#.

Di bawah ialah program untuk mencari kuasa dua nombor.

Kod:

using System;
class Square
{
public int side;
public Square(int a)
{
side=a;
}
public int Sq()
{
return side*side;
}
}
class First
{
static void Main(String [] args)
{
int result;
Square s= new Square(4);
result=s.Sq();
Console.WriteLine("Square of the given number is " + result);
}
}

Output:

Objek dalam C#

  • Kami telah mencipta Dataran kelas dan menulis dua fungsi di dalam kelas. Satu fungsi, yang juga merupakan pembina (Nama fungsi sama seperti nama Kelas), adalah untuk memasukkan nilai nombor dan satu lagi untuk melakukan operasi sebenar.
  • Dalam kelas First kami yang mempunyai fungsi utama di dalamnya, kami telah memulakan objek 's' kami dan lulus dalam parameter, untuk nombor yang sebenarnya kami mahu melaksanakan operasi segi empat sama.
  • Dan kami mengisytiharkan hasil pembolehubah; kami menghantar output kaedah yang diakses objek 'Sq', yang melakukan operasi sebenar.
  • Akhir sekali, mengeluarkan hasil petak dalam konsol kami.

Untuk cara seterusnya kami mencipta objek, contohnya adalah seperti di bawah:

Kod:

using System;
class Square
{
public int side;
public Square(int a)
{
side=a;
}
public int Sq()
{
return side*side;
}
}
class First
{
static void Main(String [] args)
{
int result1,result2;
Square s1= new Square(4);
Square s2;
s2=s1;
result1=s1.Sq();
result2=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
}
}

Output:

Objek dalam C#

Dan kepada pelanjutan ini, kami juga boleh menetapkan nilai kepada pembolehubah kami menggunakan objek. Mari lihat bagaimana kita boleh melakukannya.

Kod:

using System;
class Square
{
public int Side;
public Square(int side)
{
Side=side;
}
public int Sq()
{
return Side*Side;
}
}
class First
{
static void Main(String [] args)
{
int result1,result2,result3;
Square s1= new Square(4);
Square s2= new Square(6);
result1=s1.Sq();
result2=s2.Sq();
s2.Side=7;
result3=s2.Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
}
}

Di sini, kami telah mengakses pembolehubah dan menukar nilainya daripada 6 kepada 7. Kemudian output dicetak selepas memulakan nilai kepada hasil pembolehubah baharu 3.

Output:

Objek dalam C#

Sehingga di sini, kami telah mencipta objek dan merujuknya melalui satu format teks. Sekarang mari kita lihat bagaimana jika kita memerlukan pelbagai objek untuk menyimpan dan memanipulasi data kita.

Kod:

using System;
class Square
{
public int Side;
public void Sqr(int side)
{
Side=side;
}
public int Sq()
{
return Side*Side;
}
}
class First
{
static void Main(String [] args)
{
int result1,result2,result3;
Square[] sq = new Square[3];
sq[0]= new Square();
sq[1]= new Square();
sq[2]= new Square();
sq[0].Side=13;
sq[1].Side=85;
sq[2].Side=25;
result1=sq[0].Sq();
result2=sq[1].Sq();
result3=sq[2].Sq();
Console.WriteLine("Square of the given number is " + result1);
Console.WriteLine("Square of the given number is " + result2);
Console.WriteLine("Square of the given number is " + result3);
}
}

Dalam atur cara di atas, sama seperti sebelumnya, kami telah mencipta tatasusunan objek dan memberikan nilai kepada setiap objek. Kami kemudian melaksanakan fungsi kedua kami untuk menjana kuasa dua dua nombor.

Output:

Objek dalam C#

Sebagai latihan, bolehkah anda cuba memuatkan markah 5 pelajar dalam 3 mata pelajaran menggunakan tatasusunan objek?

Kesimpulan

Seperti yang dilihat di atas, kami telah berjaya mencipta objek dengan cara yang berbeza dan menggunakannya untuk menetapkan nilai kepada pembolehubah dan memanggil fungsi yang ada di dalam kelas. Tetapi di sini, kita perlu memahami dan mengikuti beberapa peraturan berdasarkan pengubah suai akses. Objek tidak boleh mengakses pembolehubah/fungsi dengan pengubah akses "peribadi" yang dimiliki oleh kelas lain. Tetapi boleh mengakses pembolehubah atau fungsi kelas yang sama walaupun diisytiharkan dengan pengubah suai peribadi. Jadi, dengan cara ini, terdapat satu set peraturan yang ditakrifkan berkenaan dengan kelas, pembolehubah, fungsi dan objek. Cuba bermain-main dalam mencipta objek dengan cara yang berbeza dengan pengubah suai akses yang berbeza dan lihat output untuk mengetahui skop objek dan terus belajar.

Atas ialah kandungan terperinci Objek dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Iterator dalam C#Artikel seterusnya:Iterator dalam C#