Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Nota
Konten ini dicetak ulang oleh izin Pearson Education, Inc. dari Panduan Desain Kerangka Kerja: Konvensi, Idiom, dan Pola untuk Pustaka .NET yang Dapat Digunakan Kembali, Edisi ke-2. Edisi itu diterbitkan pada tahun 2008, dan buku tersebut telah sepenuhnya direvisi pada edisi ketiga. Beberapa informasi di halaman ini mungkin sudah kedaluarsa.
❌ JANGAN tentukan konstruktor internal publik atau terlindungi dalam jenis abstrak.
Konstruktor harus bersifat publik hanya jika pengguna perlu membuat instans objek dari tipe tersebut. Karena Anda tidak dapat membuat instans jenis abstrak, jenis abstrak dengan konstruktor publik salah dirancang dan menyesatkan pengguna.
✔️ DO menentukan konstruktor yang dilindungi atau internal dalam kelas abstrak.
Konstruktor yang dilindungi lebih umum dan hanya memungkinkan kelas dasar untuk melakukan inisialisasinya sendiri ketika subjenis dibuat.
Konstruktor internal dapat digunakan untuk membatasi implementasi konkret dari kelas abstrak ke perakitan yang menentukan kelas.
✔️ DO menyediakan setidaknya satu tipe konkret yang mewarisi dari setiap kelas abstrak yang Anda sediakan.
Melakukan ini membantu memvalidasi desain kelas abstrak. Misalnya, System.IO.FileStream adalah implementasi kelas System.IO.Stream abstrak.
© Sebagian 2005, 2009 Microsoft Corporation. Hak cipta dilindungi oleh undang-undang
Dicetak ulang oleh izin Pearson Education, Inc. dari Panduan Desain Kerangka Kerja: Konvensi, Idiom, dan Pola untuk Pustaka .NET yang Dapat Digunakan Kembali, Edisi ke-2 oleh Krzysztof Cwalina dan Brad Abrams, diterbitkan 22 Okt 2008 oleh Addison-Wesley Professional sebagai bagian dari Seri Pengembangan Microsoft Windows.