Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Perbezaan antara kelas dan struktur dalam C#

Perbezaan antara kelas dan struktur dalam C#

WBOY
WBOYke hadapan
2023-08-30 23:01:021005semak imbas

C# 中类和结构的区别

Untuk membezakan antara kelas dan struktur, kita mesti terlebih dahulu memahami bahawa struktur dan kelas kelihatan setara dalam konteks memegang dan menentukan data. Kedua-duanya boleh menentukan dan menyimpan beberapa nilai lalai dalam ahli data mereka. Walau bagaimanapun, jika kita memikirkannya di luar konteks ini, kelas memberikan lebih fleksibiliti dan fungsi berbanding dengan struktur.

Berikut ialah perbezaan penting antara kelas dan struktur.

tr>6
sr.number key class structure
1 data type Data yang ditakrifkan dalam kelas disimpan dalam ingatan sebagai rujukan dan mempunyai alamat khusus untuk akses mudah, Jadi ia boleh dinyatakan sebagai kelas adalah jenis rujukan. Sebaliknya, dalam kes struct, nilai ahli data disimpan terus pada timbunan atau sebaris dalam jenis yang mengandungi, jadi struct dianggap sebagai jenis nilai.
2 Storage Seperti yang dinyatakan di atas, dalam kes Kelas, ahli data disimpan sebagai rujukan dan jenis rujukan diperuntukkan pada ingatan timbunan. td> Sebaliknya, nilai disimpan terus dalam struktur, jadi jenis nilai diperuntukkan pada memori tindanan.
3 Constructor Sesuatu kelas boleh ditakrifkan menggunakan pembina dan pemusnah semasa ia melaksanakan fungsinya. Sebaliknya, struct tidak boleh mempunyai pembina atau pemusnah kerana tiada pelaksanaan sedemikian disediakan di dalamnya.
4 Instantiation sebagai kelas yang diperkenalkan melalui pembina dengan bantuan contohnya boleh dibuat seketika menggunakan kata kunci baharu. Sebaliknya, struktur boleh mencipta kejadian tanpa kata kunci baharu.
5 Warisan Sesuatu kelas boleh mewarisi sifat daripada kelas induknya kerana ia menyokong fungsi warisan. Sebaliknya, struct tidak menyokong pewarisan.
Pengubah suai dilindungi Kita boleh menggunakan pengubah yang dilindungi untuk ahli data yang ditakrifkan dalam kelas kerana Kelas menyokong pengubah yang dilindungi. Struktur sebaliknya tidak menyokong pengubah suai yang dilindungi.

Atas ialah kandungan terperinci Perbezaan antara kelas dan struktur dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam