Pertanyaan yang diberi tag «inheritance»

Warisan adalah cara untuk menggunakan kembali kode objek yang ada, atau untuk membuat subtipe dari objek yang ada, atau keduanya, tergantung pada dukungan bahasa pemrograman.


9
Apakah ada alasan "nyata" mengapa pewarisan berganda dibenci?
Saya selalu menyukai gagasan memiliki banyak warisan yang didukung dalam suatu bahasa. Paling sering meskipun itu sengaja dilupakan, dan seharusnya "penggantian" adalah antarmuka. Antarmuka tidak mencakup semua tanah yang sama dengan pewarisan berganda, dan pembatasan ini kadang-kadang dapat menyebabkan lebih banyak kode boilerplate. Satu-satunya alasan dasar yang pernah saya dengar …

5
Mengapa saya lebih suka komposisi daripada warisan?
Saya selalu membaca bahwa komposisi lebih disukai daripada warisan. Sebuah posting blog tentang jenis yang berbeda , misalnya, advokat menggunakan komposisi lebih dari warisan, tetapi saya tidak bisa melihat bagaimana polimorfisme tercapai. Tetapi saya merasa bahwa ketika orang mengatakan lebih suka komposisi, mereka benar-benar lebih suka kombinasi komposisi dan implementasi …

12
Mengapa Square yang mewarisi dari Rectangle menjadi bermasalah jika kita mengganti metode SetWidth dan SetHeight?
Jika kotak adalah jenis persegi panjang, lalu mengapa persegi tidak bisa mewarisi dari persegi panjang? Atau mengapa itu desain yang buruk? Saya telah mendengar orang berkata: Jika Anda membuat Square berasal dari Rectangle, maka Square harus dapat digunakan di mana saja yang Anda harapkan persegi panjang Apa masalah yang terjadi …

7
Kapan menggunakan kelas abstrak alih-alih antarmuka dengan metode ekstensi di C #?
"Kelas abstrak" dan "antarmuka" adalah konsep yang serupa, dengan antarmuka menjadi lebih abstrak dari keduanya. Salah satu faktor pembeda adalah bahwa kelas abstrak menyediakan implementasi metode untuk kelas turunan saat dibutuhkan. Namun dalam C #, faktor pembeda ini telah dikurangi dengan pengenalan metode ekstensi baru-baru ini, yang memungkinkan implementasi disediakan …

11
Mengapa baik membagi program menjadi beberapa kelas? [Tutup]
Saya masih seorang siswa di sekolah menengah (memasuki kelas 10), dan saya belum mengambil kursus komputer yang sebenarnya di sekolah. Semua yang saya lakukan sejauh ini adalah melalui buku. Buku-buku itu telah mengajarkan saya konsep-konsep seperti pewarisan, tetapi bagaimana membagi program menjadi beberapa kelas membantu? Buku-buku tidak pernah memberi tahu …

17
Apakah pemrograman OO benar-benar sama pentingnya dengan mempekerjakan perusahaan? [Tutup]
Saya baru saja menyelesaikan gelar master (dalam komputasi) dan melamar pekerjaan. Saya perhatikan banyak perusahaan secara khusus meminta pemahaman tentang orientasi objek. Pertanyaan wawancara populer adalah tentang warisan, polimorfisme, pengakses, dll Apakah OO benar-benar penting? Saya bahkan punya wawancara untuk pekerjaan pemrograman di C dan setengah dari wawancara adalah OO. …

1
Bagaimana mixin atau sifat-sifat lebih baik daripada pewarisan berganda?
C ++ memiliki multiple inheritance, banyak desain bahasa melarangnya berbahaya. Tetapi beberapa bahasa seperti Ruby dan PHP menggunakan sintaks aneh untuk melakukan hal yang sama dan menyebutnya mixin atau traits. Saya mendengar berkali-kali bahwa mixin / traits lebih sulit untuk disalahgunakan daripada multiple inheritance. Apa yang secara khusus membuat mereka …

3
Apa itu sistem tipe?
Latar Belakang Saya merancang bahasa, sebagai proyek sampingan. Saya memiliki assembler yang berfungsi, analisa statis, dan mesin virtual untuk itu. Karena saya sudah dapat mengkompilasi dan menjalankan program non-sepele menggunakan infrastruktur yang saya bangun, saya berpikir untuk memberikan presentasi di universitas saya. Selama pembicaraan saya, saya menyebutkan bahwa VM menyediakan …





11
Apakah kelas / metode abstrak sudah usang?
Saya biasa membuat banyak kelas / metode abstrak. Kemudian saya mulai menggunakan antarmuka. Sekarang saya tidak yakin apakah antarmuka tidak membuat kelas abstrak menjadi usang. Anda membutuhkan kelas yang sepenuhnya abstrak? Buat antarmuka sebagai gantinya. Anda memerlukan kelas abstrak dengan beberapa implementasi di dalamnya? Buat antarmuka, buat kelas. Mewarisi kelas, …

3
Apakah "komposisi atas warisan" melanggar "prinsip kering"?
Sebagai contoh, pertimbangkan saya memiliki kelas untuk kelas lain untuk diperluas: public class LoginPage { public String userId; public String session; public boolean checkSessionValid() { } } dan beberapa subclass: public class HomePage extends LoginPage { } public class EditInfoPage extends LoginPage { } Bahkan, subclass tidak memiliki metode untuk …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.