-
Apa nama parameter implisit yang diteruskan ke metode set suatu properti?
nilai, yang tipenya sama dengan tipe properti yang dideklarasikan.
Bagaimana cara mengimplementasikan warisan di C#?
Tambahkan titik dua setelah nama kelas, diikuti dengan nama kelas dasar.
Apakah C# mendukung pewarisan berganda?
Tidak didukung. Hal ini dapat dicapai dengan menggunakan antarmuka.
Di mana properti/metode yang dilindungi dapat diakses?
Itu dapat diakses melalui warisan atau warisan tidak langsung dan subkelas dari kelas ini.
Apakah anggota pribadi akan diwariskan?
Ya, tapi tidak bisa diakses. Jadi sepertinya tidak bisa diwariskan, tapi nyatanya diwariskan. (Menurut pendapat saya, subkelas mewarisi segalanya dari kelas induk. <Berpikir dalam JAVA> mengatakan bahwa objek subkelas memiliki salinan lengkap dari objek kelas induk. Membuat instance kelas dibuat dari superkelas tingkat atas, adalah lapisan- struktur pembungkus per lapis. Metode akses terbatas pribadi hanya dapat berada di dalam kelas. Ini hanyalah kontrol akses.
Tolong jelaskan pengubah yang dilindungi internal.
Properti/metode yang dimodifikasi oleh internal yang dilindungi hanya dapat diakses oleh subkelasnya dalam rakitan yang sama (Assembly).
C# menyediakan konstruktor tanpa parameter default. Saat saya mengimplementasikan konstruktor lain dengan satu parameter, saya juga ingin mempertahankan konstruktor tanpa parameter ini. Berapa banyak konstruktor yang harus saya tulis dengan cara ini?
Kedua, setelah Anda mengimplementasikan konstruktor, C# tidak akan lagi menyediakan konstruktor default, jadi Anda perlu mengimplementasikan konstruktor tanpa parameter secara manual.
Apa kelas dasar yang umum untuk semua objek di C#?
Sistem.Objek.
Apa perbedaan antara kelebihan beban dan penimpaan?
Overloading menyediakan implementasi pemanggilan tanda tangan metode dengan parameter berbeda. Overriding menyediakan implementasi dalam subkelas yang mengubah perilaku metode kelas induk.
Apa arti virtual dalam definisi metode?
Metode yang dimodifikasi oleh virtual dapat ditimpa oleh subkelas.
Bisakah metode non-statis diganti menjadi metode statis?
Tidak, tanda tangan metode overriding harus konsisten dengan tanda tangan metode override, kecuali untuk mengubah virtual menjadi override.
Bisakah metode virtual privat ditimpa?
Tidak, bahkan metode privat di kelas induk tidak dapat diakses di subkelas.
Bisakah suatu kelas dicegah agar tidak diwarisi oleh kelas lain?
Ya, gunakan kata kunci tersegel.
Apakah mungkin untuk mengizinkan kelas tertentu untuk diwarisi, tetapi tidak mengizinkan metode tertentu di dalamnya untuk ditimpa?
Ya, tandai kelas ini sebagai publik dan tandai metode ini sebagai tersegel.
Apa itu kelas abstrak?
Kelas yang tidak dapat dipakai. Kelas abstrak umumnya berisi metode abstrak, namun tentu saja dapat juga memiliki implementasi yang konkrit. Kelas yang diwarisi hanya dapat dibuat instance-nya setelah kelas tersebut mengimplementasikan semua metode abstrak dari kelas abstrak tersebut.
Kapan suatu kelas harus dinyatakan abstrak?
Ketika kelas ini berisi metode abstrak, atau ketika kelas tidak sepenuhnya mengimplementasikan metode abstrak dari kelas induk.
Apa itu antarmuka?
Kelas yang hanya berisi metode abstrak publik. Metode ini harus diimplementasikan di subkelas.
Mengapa saya tidak bisa menentukan pengubah metode di antarmuka?
Metode di antarmuka digunakan untuk menentukan kontrak komunikasi antar objek. Tidak ada gunanya menentukan metode di antarmuka sebagai pribadi atau dilindungi. Mereka menggunakan metode publik secara default.
Bisakah saya mewarisi banyak antarmuka?
tentu.
Jadi bagaimana jika ada nama metode duplikat di antarmuka ini?
Dalam hal ini Anda dapat memutuskan bagaimana menerapkannya. Tentu saja Anda harus sangat berhati-hati. Namun tidak ada masalah dalam proses kompilasinya.
Apa perbedaan antara antarmuka dan kelas abstrak?
Semua metode dalam antarmuka harus abstrak, dan pengubah akses metode tidak dapat ditentukan. Kelas abstrak dapat memiliki implementasi metode dan juga dapat menentukan pengubah akses untuk metode.
Bagaimana cara membedakan metode yang kelebihan beban?
Jenis parameter berbeda, nomor parameter berbeda, dan urutan parameter berbeda.
Apa perbedaan antara const dan hanya baca?
Kata kunci const digunakan untuk mendeklarasikan konstanta waktu kompilasi, dan readonly digunakan untuk mendeklarasikan konstanta waktu proses.
Apa perbedaan antara Sistem.String dan Sistem.StringBuilder?
System.String adalah string yang tidak dapat diubah. System.StringBuilder menyimpan string variabel dan menyediakan beberapa metode untuk memodifikasi string ini.
Artikel ini berasal dari blog CSDN. Harap sebutkan sumbernya saat mencetak ulang: http://blog.csdn.net/thy822/archive/2009/12/23/5060689.aspx
-