Pengertian Inheritance Pada Java

Daftar Isi

    Lancang Kuning - Inheritance di Java adalah mekanisme di mana satu objek memperoleh semua properti dan perilaku objek induk. Ini adalah bagian penting dari OOP (Object Oriented programming system). Gagasan di balik Inheritance di Java adalah Anda dapat membuat kelas baru yang dibangun di atas kelas yang ada.

    Saat Anda mewarisi dari kelas yang ada, Anda bisa menggunakan kembali metode dan bidang kelas induk. Selain itu, Anda dapat menambahkan metode dan bidang baru di kelas Anda saat ini juga. Inheritance merupakan hubungan IS-A yang juga dikenal sebagai hubungan orangtua-anak.

    Baca juga : Tempat Wisata di Riau

    Mengapa menggunakan inheritance di java

    • Untuk Metode Overriding (sehingga polimorfisme runtime dapat dicapai).
    • Untuk Reusability Kode.

    Istilah yang digunakan dalam inheritance

    • Kelas: Kelas adalah sekelompok objek yang memiliki sifat umum. Ini adalah template atau cetak biru dari mana objek dibuat.
    • Sub Kelas / Kelas Anak: Subclass adalah kelas yang mewarisi kelas lain. Ini juga disebut kelas turunan, kelas lanjutan, atau kelas anak.
    • Kelas Super / Kelas Induk: Kelas Super adalah kelas tempat subkelas mewarisi fitur. Ini juga disebut kelas dasar atau kelas induk.
    • Reusability: Seperti namanya, reusability adalah mekanisme yang memfasilitasi Anda untuk menggunakan kembali bidang dan metode kelas yang ada saat Anda membuat kelas baru. Anda dapat menggunakan bidang dan metode yang sama yang sudah ditentukan di kelas sebelumnya.

    Sintaks inheritance java

    class Subclass-name extends Superclass-name 

       //methods and fields 

    Kata kunci extends menunjukkan bahwa Anda membuat kelas baru yang berasal dari kelas yang ada. Arti "meluas" adalah untuk meningkatkan fungsionalitas. Dalam terminologi Java, kelas yang diwarisi disebut orang tua atau superclass, dan kelas baru disebut anak atau subkelas.

    Contoh inheritance java

    Contoh inheritance java yakni sebagai berikut, Programmer adalah subclass dan Karyawan adalah superclass. Hubungan antara dua kelas adalah Programmer IS-A Karyawan. Ini berarti bahwa Programmer adalah tipe Karyawan. Dalam contoh tersebut dapat diartikan, objek Programmer dapat mengakses bidang kelas sendiri serta kelas reusability kode Karyawan.

    Jenis-jenis inheritance di java

    Berdasarkan kelas, bisa ada tiga jenis inheritance di java: single, multilevel dan hierarchical. Dalam pemrograman java, inheritance multiple dan hybrid hanya didukung melalui antarmuka.

    Contoh inheritance single

    Ketika suatu kelas mewarisi kelas lain, itu dikenal sebagai satu warisan. Dalam contoh yang diberikan di bawah ini, kelas Anjing mewarisi kelas Hewan, jadi ada inherintace single.

    File: TestInheritance.java

    class Animal{ 

    void eat(){System.out.println("eating...");} 

    class Dog extends Animal{ 

    void bark(){System.out.println("barking...");} 

    class TestInheritance{ 

    public static void main(String args[]){ 

    Dog d=new Dog(); 

    d.bark(); 

    d.eat(); 

    }} 

    Output:

    barking...

    eating...

    Contoh inherintace multilevel

    Ketika ada rantai warisan, itu dikenal sebagai inheritance multilevel. Seperti yang Anda lihat dalam contoh yang diberikan di bawah ini, kelas BabyDog mewarisi kelas Anjing yang lagi mewarisi kelas Hewan, jadi ada warisan bertingkat.

    Baca juga : Pengertian Polymorphism

    File: TestInheritance2.java

    class Animal{ 

    void eat(){System.out.println("eating...");} 

    class Dog extends Animal{ 

    void bark(){System.out.println("barking...");} 

    class BabyDog extends Dog{ 

    void weep(){System.out.println("weeping...");} 

    class TestInheritance2{ 

    public static void main(String args[]){ 

    BabyDog d=new BabyDog(); 

    d.weep(); 

    d.bark(); 

    d.eat(); 

    }} 

    Output:

    weeping...

    barking...

    eating...

    Contoh inheritance hierarchical

    Ketika dua atau lebih kelas mewarisi satu kelas, itu dikenal sebagai inheritance hierarchical. Dalam contoh yang diberikan di bawah ini, kelas Anjing dan Kucing mewarisi kelas Hewan, jadi ada warisan hierarkis.

    File: TestInheritance3.java

    class Animal{ 

    void eat(){System.out.println("eating...");} 

    class Dog extends Animal{ 

    void bark(){System.out.println("barking...");} 

    class Cat extends Animal{ 

    void meow(){System.out.println("meowing...");} 

    class TestInheritance3{ 

    public static void main(String args[]){ 

    Cat c=new Cat(); 

    c.meow(); 

    c.eat(); 

    //c.bark();//C.T.Error 

    }} 

    Output:

    meowing...

    eating...

    Baca juga : Tempat Wisata di Pekanbaru

    Mengapa multiple inheritance tidak didukung di java?

    Untuk mengurangi kompleksitas dan menyederhanakan bahasa, banyak inheritance tidak didukung di java. Pertimbangkan skenario di mana A, B, dan C adalah tiga kelas. Kelas C mewarisi kelas A dan B. Jika kelas A dan B memiliki metode yang sama dan Anda memanggilnya dari objek kelas anak, akan ada ambiguitas untuk memanggil metode kelas A atau B.

    Karena kesalahan waktu kompilasi lebih baik daripada kesalahan runtime, Java membuat kesalahan waktu kompilasi jika Anda mewarisi 2 kelas. Jadi apakah Anda memiliki metode yang sama atau berbeda, akan ada kesalahan waktu kompilasi. (Mawar)

    Bagikan Artikel

    data.label
    data.label
    data.label
    data.label
    Beri penilaian untuk artikel Pengertian Inheritance Pada Java
    Sangat Suka

    0%

    Suka

    37%

    Terinspirasi

    0%

    Tidak Peduli

    50%

    Marah

    12%

    Komentar