Perbezaan Antara Warisan dan Antara Muka di Jawa

Perbezaan Utama - Warisan vs Interface di Jawa
 

Java adalah bahasa pengaturcaraan yang dibangunkan oleh Sun Microsystems. Java boleh digunakan untuk membangunkan pelbagai aplikasi. Ia adalah bahasa pelbagai paradigma yang menyokong berorientasikan objek, berstruktur dan lain-lain. Kelebihan utama Java ialah ia menyokong pengaturcaraan Berorientasi Objek (OOP). Programmer boleh membuat kelas dan objek. Terdapat empat pilar di OOP. Mereka adalah warisan, polimorfisme, abstraksi dan enkapsulasi. Warisan dan antara muka berkaitan dengan OOP. The perbezaan utama antara warisan dan antara muka adalah bahawa warisan adalah untuk mendapatkan kelas baru dari kelas sedia ada dan antara muka adalah untuk melaksanakan kelas abstrak dan warisan berganda.

KANDUNGAN

1. Gambaran Keseluruhan dan Perbezaan Utama
2. Apakah Warisan di Jawa
3. Apakah Antara Muka di Jawa
4. Persamaan Antara Warisan dan Antara Muka di Jawa
5. Side by Side Comparison - Warisan vs Antara Muka di Jawa dalam Borang Tabular
6. Ringkasan

Apakah warisan di Jawa?

Warisan boleh mencapai kebolehgunaan semula kod. Warisan membantu untuk menggunakan semula atribut dan kaedah kelas yang sedia ada. Mekanisme penerbitan kelas baru menggunakan kelas lama dipanggil warisan. Kelas lama dikenali sebagai kelas induk atau kelas super. Kelas yang berasal disebut kelas kanak-kanak atau subclass.

Sintaks dari warisan Jawa adalah seperti berikut.

kelas subclass_name memanjangkan superclass_name

pengisytiharan berubah;

pengisytiharan kaedah;

Konsep pewarisan boleh dijelaskan menggunakan contoh berikut. Anggapkan bahawa terdapat kelas yang dipanggil A seperti berikut.

kelas awam A

jumlah kekosongan awam ()

System.out.println ("Sum");

Sekiranya kita mahu menambah kaedah baru tanpa mengubah kelas sedia ada, kita boleh melakukannya seperti berikut.

kelas awam B

sub void public ()

System.out.println ("Sub");

Programmer boleh menggunakan warisan untuk menggunakan kelas A sum ().

kelas awam B memanjangkan kelas A

sub void public ()

System.out.println ("Sub");

Dalam fungsi utama, adalah mungkin untuk membuat objek B dan panggilan sub (), yang dimiliki oleh kelas B dan jumlah (), yang dimiliki oleh kelas A dengan menggunakan warisan.

public static void main (String [] args)

B obj = new B ();

obj.sub ();

obj.sum ();

Terdapat pelbagai warisan. Mereka adalah warisan tunggal, warisan berganda, warisan pelbagai peringkat, dan warisan hierarki. In warisan tunggal, terdapat satu kelas asas dan satu kelas yang diturunkan. In warisan pelbagai peringkat, Terdapat tiga kelas iaitu kelas asas, kelas pertengahan dan kelas yang berasal. Kelas pertengahan mewarisi dari kelas asas, dan kelas diturunkan dari kelas pertengahan. In warisan hierarki, terdapat satu kelas asas dan banyak kelas yang diturunkan. Terdapat jenis khas yang dikenali sebagai Warisan hibrid. Ia adalah gabungan dua atau lebih jenis warisan.

Rajah 01: Pewarisan

In Warisan berbilang terdapat banyak kelas asas dan satu kelas yang diturunkan. Anggapkan bahawa kelas A dan B adalah kelas asas. Kelas C ialah kelas yang diturunkan. Jika kedua-dua kelas A dan B mempunyai kaedah yang sama dan programmer memanggil kaedah itu dari kelas asal, ia akan menyebabkan masalah kekaburan. Memperkenalkan dua kelas boleh menyebabkan kesilapan kompilasi-masa. Oleh itu, warisan berganda tidak disokong di Jawa. Antara muka boleh digunakan untuk mengatasi masalah tersebut.

Apakah Antara Muka di Jawa?

Pengekstrakan adalah proses menyembunyikan butir-butir pelaksanaan dan memaparkan hanya fungsi kepada pengguna. Abstraksi boleh dicapai dengan menggunakan Abstrak Kelas atau Antaramuka. Kaedah abstrak adalah kaedah tanpa pelaksanaan. Kelas dengan sekurang-kurangnya satu kaedah abstrak adalah kelas abstrak. Contoh kelas abstrak adalah seperti berikut.

kelas abstrak A

abstrak kekosongan jumlah ();

Anggapkan bahawa terdapat dua kelas abstrak seperti A dan B. Untuk melaksanakan kaedah abstrak A dan B, kelas C baru dibuat. Kemudian kelas C perlu memanjangkan kedua-dua A dan B. Namun, banyak pusaka tidak disokong di Jawa. Oleh itu, harus menggunakan antara muka. Antara muka boleh digunakan untuk mengisytiharkan kaedah, tetapi tidak mungkin untuk menentukan kaedah. Tidak dapat membuat objek menggunakan antara muka. Kelas C harus melaksanakan semua kaedah dalam antara muka A dan B.

antara muka A

kekosongan jumlah ();

antara muka B

batal sub ();

kelas C melaksanakan A, B

jumlah kekosongan awam ()

System.out.println ("Penjumlahan");

sub void public ()

System.out.println ("Penolakan");

Sekarang, dalam program utama adalah mungkin untuk membuat objek C dan memanggil kedua-dua kaedah.

public static void main (String [] args)

C obj = new C ();

obj.sum ();

obj.sub ();

Jadi, antara muka boleh digunakan untuk melaksanakan pelbagai pusaka.

Satu lagi penggunaan antara muka adalah ia menyediakan keselamatan. Rujuk kod di bawah.

antara muka A

kekosongan jumlah ();

kelas B melaksanakan A

jumlah kekosongan awam ()

System.out.println ("Penjumlahan");

void berbilang orang ()

System.out.println ("Pendaraban");

Apabila membuat objek B, adalah mungkin untuk memanggil kedua-dua kaedah () dan berganda (). Sekiranya pengaturcara mahu menyekat menggunakan fungsi berganda (), adalah mungkin seperti berikut.

public static void main (String [] args)

A obj = new B ();

obj.sum ();

A obj = new B (); akan membuat objek. Ia adalah jenis A dan memori diperuntukkan sebagai B. Adalah mungkin untuk memanggil jumlah () tetapi tidak dapat melaksanakan multiply (). Pembatasan ini dilakukan menggunakan antara muka.

Apakah Kesamaan Antara Warisan dan Antara Muka di Jawa?

  • Kedua-dua konsep berkaitan dengan Pengaturcaraan Berorientasikan Objek
  • Kedua-duanya mewakili hubungan IS-A.

Apakah Perbezaan Antara Warisan dan Antara Muka di Jawa?

Warisan vs Antara Muka di Jawa

Warisan adalah konsep OOP untuk memperoleh kelas baru dari kelas sedia ada. Antara muka adalah mekanisme dalam OOP untuk melaksanakan abstrak dan warisan berganda.
Penggunaan
Warisan menyediakan kebolehgunaan semula kod. Antara muka menyediakan abstraksi dan warisan berganda.

Ringkasan - Warisan vs Interface di Jawa

Java adalah bahasa pengaturcaraan multi-paradigma yang menyokong pengaturcaraan berorientasikan objek. Warisan dan antara muka berkaitan dengan pengaturcaraan berorientasikan objek. Perbezaan antara warisan dan antara muka adalah bahawa warisan adalah untuk mendapatkan kelas baru dari kelas dan antaramuka sedia ada untuk melaksanakan kelas abstrak dan warisan berganda.

Muat turun Versi PDF Warisan vs Antara Muka di Jawa

Anda boleh memuat turun versi PDF artikel ini dan menggunakannya untuk tujuan luar talian seperti nota kutipan. Sila muat turun versi PDF di sini Perbezaan Antara Warisan dan Antara Muka di Jawa

Rujukan:

1.Point, Tutorial. "Java Inheritance.", Titik Tutorial, 31 Okt 2017. Boleh didapati di sini 
2.Point, Tutorial. "Java Interfaces." , Titik Tutorial, 31 Okt 2017. Boleh didapati di sini 

Image Courtesy:

1. 'CPT-OOP-inheritance-bikes' By Pluke - Kerja sendiri, (Domain Awam) melalui Wikimedia Commons