Perbedaan antara warisan dan antarmuka di java

Perbedaan antara warisan dan antarmuka di java

Perbedaan utama - warisan vs antarmuka di java
 

Java adalah bahasa pemrograman yang dikembangkan oleh Sun Microsystems. Java dapat digunakan untuk mengembangkan berbagai aplikasi. Ini adalah bahasa multi-paradigm yang mendukung objek yang berorientasi, terstruktur dll. Keuntungan utama Java adalah mendukung pemrograman berorientasi objek (OOP). Programmer dapat membuat kelas dan objek. Ada empat pilar di oop. Mereka adalah warisan, polimorfisme, abstraksi dan enkapsulasi. Warisan dan antarmuka terkait dengan OOP. Itu perbedaan utama antara warisan dan antarmuka adalah itu Warisan adalah untuk memperoleh kelas baru dari kelas yang ada dan antarmuka adalah untuk mengimplementasikan kelas abstrak dan warisan berganda.

ISI

1. Ikhtisar dan Perbedaan Utama
2. Apa warisan di java
3. Apa antarmuka di java
4. Kesamaan antara warisan dan antarmuka di java
5. Perbandingan berdampingan - antarmuka warisan vs dalam java dalam bentuk tabel
6. Ringkasan

Apa warisan di java?

Warisan dapat mencapai kegunaan kode kembali. Warisan membantu menggunakan kembali atribut dan metode kelas yang sudah ada. Mekanisme Kelas Baru Menggunakan Kelas Lama disebut warisan. Kelas lama dikenal sebagai kelas induk atau kelas super. Kelas turunannya disebut kelas anak atau subkelas.

Sintaks warisan java adalah sebagai berikut.

kelas subclass_name memperluas superclass_name

deklarasi variabel;

deklarasi metode;

Konsep waris dapat dijelaskan dengan menggunakan contoh berikut. Asumsikan bahwa ada kelas yang disebut sebagai berikut.

Kelas Publik A

public void sum ()

Sistem.keluar.println ("sum");

Jika kami ingin menambahkan metode baru tanpa mengubah kelas yang ada, kami dapat melakukannya sebagai berikut.

Kelas Publik B

public void sub ()

Sistem.keluar.println ("sub");

Programmer dapat menggunakan warisan untuk menggunakan jumlah kelas A ().

Public Class B memperluas kelas A

public void sub ()

Sistem.keluar.println ("sub");

Dalam fungsi utama, dimungkinkan untuk membuat objek B dan panggilan sub (), yang termasuk kelas B dan jumlah (), yang termasuk dalam kelas A menggunakan warisan.

public static void main (string [] args)

B OBJ = baru b ();

OBJ.sub();

OBJ.jumlah();

Ada berbagai jenis warisan. Mereka adalah warisan tunggal, warisan berganda, warisan multi-level, dan warisan hierarkis. Di dalam warisan tunggal, ada satu kelas dasar dan satu kelas turunan. Di dalam warisan multi-level, Ada tiga kelas yaitu, kelas dasar, kelas menengah dan kelas turunan. Kelas menengah mewarisi dari kelas dasar, dan kelas turunan mewarisi dari kelas menengah. Di dalam warisan hierarkis, ada satu kelas dasar dan banyak kelas turunan. Ada jenis khusus yang dikenal sebagai Warisan hibrida. Ini adalah kombinasi dari dua atau lebih jenis warisan.

Gambar 01: Warisan

Di dalam Warisan berganda Ada banyak kelas dasar dan satu kelas turunan. Asumsikan bahwa Kelas A dan B adalah kelas dasar. Kelas C adalah kelas turunannya. Jika kedua kelas A dan B memiliki metode yang sama dan programmer memanggil metode itu dari kelas yang diturunkan, itu akan menyebabkan masalah ambiguitas. Mewarisi dua kelas dapat menyebabkan kesalahan waktu kompilasi. Oleh karena itu, warisan berganda tidak didukung di Java.  Antarmuka dapat digunakan untuk mengatasi masalah itu.

Apa antarmuka di java?

Abstraksi adalah proses menyembunyikan detail implementasi dan hanya menampilkan fungsionalitas kepada pengguna. Abstraksi dapat dicapai dengan menggunakan kelas atau antarmuka abstrak. Metode abstrak adalah metode tanpa implementasi. Kelas dengan setidaknya satu metode abstrak adalah kelas abstrak. Contoh kelas abstrak adalah sebagai berikut.

Abstrak Kelas A

abstrak void sum ();

Asumsikan bahwa ada dua kelas abstrak sebagai A dan B. Untuk mengimplementasikan metode abstrak A dan B, Kelas C baru dibuat. Maka Kelas C harus memperpanjang A dan B., Tapi warisan berganda tidak didukung di Java. Oleh karena itu, harus menggunakan antarmuka. Antarmuka dapat digunakan untuk mendeklarasikan metode, tetapi tidak mungkin untuk mendefinisikan metode. Tidak mungkin membuat objek menggunakan antarmuka. Kelas C harus mengimplementasikan semua metode dalam antarmuka A dan B.

antarmuka

batal jumlah ();

antarmuka b

void sub ();

Kelas C mengimplementasikan A, B

public void sum ()

Sistem.keluar.println (“summation”);

public void sub ()

Sistem.keluar.println ("pengurangan");

Sekarang, dalam program utama dimungkinkan untuk membuat objek C dan memanggil kedua metode.

public static void main (string [] args)

C OBJ = C baru ();

OBJ.jumlah();

OBJ.sub();

Jadi, antarmuka dapat digunakan untuk mengimplementasikan beberapa warisan.

Penggunaan antarmuka lainnya adalah memberikan keamanan. Rujuk kode di bawah ini.

antarmuka

batal jumlah ();

Kelas B mengimplementasikan A

public void sum ()

Sistem.keluar.println (“summation”);

public void multiply ()

Sistem.keluar.println ("multiplikasi");

Saat membuat objek B, dimungkinkan untuk memanggil kedua metode SUM () dan Multiply (). Jika programmer ingin membatasi fungsi Multiply (), dimungkinkan sebagai berikut.

public static void main (string [] args)

A OBJ = baru b ();

OBJ.jumlah();

A OBJ = baru b (); akan membuat objek. Itu adalah tipe A dan memori dialokasikan sebagai b. Dimungkinkan untuk memanggil jumlah () tetapi tidak dapat mengeksekusi multiply (). Pembatasan ini dilakukan dengan menggunakan antarmuka.

Apa kesamaan antara warisan dan antarmuka di java?

  • Kedua konsep tersebut terkait dengan pemrograman yang berorientasi objek
  • Keduanya mewakili hubungan IS-A.

Apa perbedaan antara warisan dan antarmuka di java?

Warisan vs antarmuka di java

Warisan adalah konsep OOP untuk memperoleh kelas baru dari kelas yang ada. Antarmuka adalah mekanisme dalam OOP untuk mengimplementasikan abstraksi dan warisan berganda.
Penggunaan
Warisan memberikan penggunaan kembali kode. Antarmuka memberikan abstraksi dan warisan berganda.

Ringkasan -Warisan vs antarmuka di java

Java adalah bahasa pemrograman multi-paradigma yang mendukung pemrograman berorientasi objek. Warisan dan antarmuka terkait dengan pemrograman berorientasi objek. Perbedaan antara warisan dan antarmuka adalah bahwa warisan adalah untuk memperoleh kelas baru dari kelas dan antarmuka yang ada adalah untuk mengimplementasikan kelas abstrak dan warisan berganda.

Unduh Versi PDF dari antarmuka warisan vs di java

Anda dapat mengunduh versi PDF artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi pdf di sini perbedaan antara warisan dan antarmuka di java

Referensi:

1.Poin, tutorial. “Warisan Java.”, Tutorials Point, 31 Okt. 2017. Tersedia disini 
2.Poin, tutorial. “Antarmuka Java.”, Tutorials Point, 31 Okt. 2017. Tersedia disini 

Gambar milik:

1.'Cpt-oop-Inheritance-Bikes' oleh Pluke-karya sendiri, (domain publik) via Commons Wikimedia