Konsep dan Penerapan Pewarisan Pada Java

Malam ini saya akan sedikit berbagi tentang penerapan pewarisan pada java. Sebenarnya, dulu waktu saya mendapat matakuliah java di semester 3, saya amat sangat tidak mengerti apa yang disebut dengan pewarisan pada pemrograman berorientasi objek. Tetapi seletah mempelarjarinya kembali pada tahun ini saya sedikit demi sedikit mengerti dengan konsep pewarisan serta penerapannya dengan bahasa pemrograman java.

Oke, sebelum mulai pada penerapannya, mari kita mulai dengan konsep pewarisanitu sendiri. Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat mempunyai class turunan.

Suatu class yang mempunyai class turunan dinamakan parent class atau base class. Sedangkan class turunan itu sendiri seringkali disebut subclass atau child class. Suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class. Karena suatu subclass dapat mewarisi apa apa yang dipunyai oleh parent class-nya, maka member dari suatu subclass adalah terdiri dari apa-apa yang ia punyai dan juga apa-apa yang ia warisi dari class parent-nya.

Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas (

extend) parent class-nya.

Setelah sedikit penjelasan tentang pewarisan dalam pemrograman berorientasi objek, sekarang kita saya akan membagikan sedikit contoh penerapannya dalam pemrogramandengan bahasa java. Sebelumnya, kita harus mendefinisikan Super Class yg mana merupakan class yang nantinya akan diturunkan ke Sub Class. Dalam contoh ini saya akan menggunakan hewan sebagai class yang akan diturunkan menjadi class kucing nantinya

      class Hewan{
            // contoh atribut yang ada pada hewan
            public String warnaBulu,nama;
            public int umur;

            // contoh method yang dimiliki oleh hewan
            public void makan(){
                        System.out.println("Hewan makan");
            }

            public void berlari(){
                        System.out.println("Hewan berlari");
            }

            public void detailHewan(){
                        System.out.println("Nama       : "+nama);
                        System.out.println("Umur       : "+umur+" th");
                        System.out.println("warna Bulu : "+warnaBulu);
                        System.out.println("yang bisa dilakukan oleh hewan adalah : " );
                        System.out.println("\t"+makan()+"\n\t"+berlari());
            }
      }

Script diatas adalah contoh super class Hewan yang nantinya akan diturunkan kepada class kucing dan anjing. Dalam class turunannya, setiap atribut dan method yang ada pada class induk secara otomatis dimiliki juga oleh class anak (sub class). Pada java untuk menyatakan pewarisan sifat class induk kepada class anaknya menggunakan keyword extends. Berikut adalah penerapannya :

       class Kucing extends Hewan{
              //contoh atribut tambahan pada class kucing
              public int panjangEkor;

              // contoh method tambahan pada class kucing
              public void bermain(){
                     System.out.println("Kucing suka bermain bola kain");
              }
       }

Walaupun pada class kucing kita mendeklarasikan atribut panjangEkor, tetapi class kucing juga memiliki atribut warnaBulu, umur dan nama. Hal ini karena ucing merupakan turunan dari kelas Hewan. Begitu juga dengan method2 yang dimiliki oleh class hewan, dimiliki juga oleh class Kucing.

Saya mengantuk.... hehehehe, okelah, cukup sampai disini dulu berbagi ilmu untuk saat ini. Semoga bermanfaat.! Salam putra.!

1 comment: