Perbezaan Antara Implementasi dan Memperluas

Anonim

Penguat vs Memperluas

Mengeksplorasi dan Memperluas adalah dua kata kunci yang terdapat dalam bahasa pengaturcaraan Java yang menyediakan cara untuk memindahkan fungsi tambahan ke kelas baru. Penggunaan kata kunci digunakan secara jelas untuk melaksanakan antara muka, sementara Memperluas kata kunci digunakan untuk mewarisi dari kelas (super). Sila ambil perhatian bahawa konsep warisan dan antara muka terdapat di kebanyakan bahasa pengaturcaraan berorientasikan objek seperti C # dan VB. BERSIH, tetapi mereka menawarkan sintaks atau kata kunci yang berbeza untuk menggunakan konsep tersebut. Artikel ini hanya memberi tumpuan kepada Memperkenalkan dan Mengembangkan kata kunci yang ditakrifkan di Jawa.

Memperluas

Memperluas kata kunci digunakan untuk melaksanakan konsep warisan dalam bahasa pengaturcaraan Java. Warisan pada asasnya menyediakan penggunaan semula kod dengan membenarkan memperluaskan sifat dan tingkah laku kelas yang sedia ada oleh kelas yang baru ditakrifkan. Apabila subkelas baru (atau kelas turunan) memanjangkan kelas super (atau kelas induk) bahawa subkelas akan mewarisi semua atribut dan kaedah kelas super. Subkelas boleh memilih untuk mengalihkan tingkah laku (menyediakan fungsi baru atau lanjutan kepada kaedah) yang diwarisi dari kelas induk. Subkelas tidak boleh memanjangkan pelbagai kelas super di Jawa. Oleh itu, anda tidak boleh menggunakan pelbagai untuk warisan. Untuk mendapatkan pewarisan berganda, anda perlu menggunakan antara muka seperti yang dijelaskan di bawah.

Implementasi

Kata kunci implikasi dalam bahasa pengaturcaraan Java digunakan untuk melaksanakan antara muka oleh kelas. Antara muka di Java adalah jenis abstrak yang digunakan untuk menentukan kontrak yang perlu dilaksanakan oleh kelas, yang melaksanakan antara muka tersebut. Biasanya antara muka hanya akan mengandungi tandatangan kaedah dan pengisytiharan yang berterusan. Mana-mana antara muka yang melaksanakan antara muka tertentu harus melaksanakan semua kaedah yang ditentukan dalam antara muka, atau harus diisytiharkan sebagai kelas abstrak. Di Jawa, jenis rujukan objek boleh didefinisikan sebagai jenis antara muka. Tetapi objek itu mesti sama ada batal atau harus memegang objek kelas, yang menerapkan antara muka tertentu. Menggunakan kata kunci Implementasi di Jawa, anda boleh melaksanakan pelbagai antaramuka ke kelas tunggal. Antara muka tidak dapat melaksanakan antara muka yang lain. Walau bagaimanapun antara muka boleh melanjutkan kelas.

Perbezaan antara Implement dan Memperluas

Walaupun, Implement dan Memperluaskan adalah dua kata kunci yang menyediakan mekanisme untuk mewarisi atribut dan tingkah laku kepada kelas dalam bahasa pengaturcaraan Java, mereka digunakan untuk dua tujuan yang berbeza. Penggunaan kata kunci digunakan untuk kelas untuk melaksanakan antara muka tertentu, manakala Memperluas kata kunci digunakan untuk subclass untuk melanjutkan dari kelas super. Apabila kelas melaksanakan antara muka, kelas itu perlu melaksanakan semua kaedah yang ditentukan dalam antara muka, tetapi apabila subclass memanjangkan kelas super, ia mungkin atau tidak boleh mengatasi kaedah yang dimasukkan dalam kelas induk.Akhir sekali, satu lagi perbezaan utama antara Implement dan Memperluas ialah, sebuah kelas boleh melaksanakan pelbagai antaramuka tetapi hanya boleh diperluas dari satu kelas super di Jawa. Secara umumnya penggunaan Implements (interfaces) dianggap lebih baik berbanding penggunaan Extends (warisan), kerana beberapa sebab seperti fleksibilitas yang lebih tinggi dan keupayaan untuk mengurangkan gandingan. Oleh itu, dalam amalan, pengaturcaraan kepada antara muka lebih disukai daripada melanjutkan kelas asas.