INHERITANCE dan POLIMORFISME
INHERITANCE
Pada postingan kali ini saya akan membahas tentang Inheritance dan
Polimorfisme pertama saya akan membahas Inheritance. Inheritance adalah
Salah satu konsep dasar dari pemrograman berbasis objek pada java. Pada
dasarnya, kita melakukan inheritance(pewarisan)
untuk membuat suatu class baru(class turunan/subclass) yang masih
memiliki sifat atau spesifikasi dari superclass. Di dalam Java untuk
mendeklarasikan suatu class sebagai subclass dilakukan dengan cara
menambahkan kata kunci extends
setelah deklarasi nama class, kemudian diikuti dengan nama parent
class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa
kita ingin melakukan perluasan class.
Beberapa aturan tentang pewarisan(inheritance) yang perlu diperhatikan :1. Java hanya memperkenankan adanya single inheritance. Konsep single inheritance hanya memperbolehkan suatu sublass mempunyai satu parent class. Dengan konsep single inheritance ini, masalah pewarisan akan dapat diamati dengan mudah.
2. Subclass juga merupakan class biasa, maka kita tetap dapat melakukan pewarisan pada subclass ini. Misal : class B merupakan subclass dari class A, kita dapat membuat class baru yang diturunkan dari class B sehingga class baru tersebut akan memiliki apa yang dimiliki oleh class A dan class B.
3. Suatu parent class dapat tidak mewariskan sebagian member-nya kepada subclass-nya. Sejauh mana suatu member dapat diwariskan ke class lain, ataupun suatu member dapat diakses dari class lain, sangat berhubungan dengan access control (kontrol pengaksesan).
contoh coding =
import java.io.*;
public class Mamalia {
void KelasMamalia () {
System.out.println("Ciri umum mamalia adalah bernapas dengan paru-paru, " +
"berkembang biak dengan cara beranak");
}}
class Paus extends Mamalia {
String x = "Ikan Paus";
void TampilkanPaus () {
System.out.println("dan Mamalia yang Anda pilih adalah "+ x );
System.out.println("Mamalia ini berada di laut");
System.out.println("Paus termasuk jenis mamalia terbesar");
}}
class Cheetah extends Mamalia {
String x = "Cheetah";
void TampilkanCheetah () {
System.out.println("dan Mamalia yang Anda pilih adalah "+ x );
System.out.println("Mamalia ini berada di darat");
System.out.println("Cheetah termasuk mamalia pelari tercepat di darat");
}}
class Sapi extends Mamalia {
String x = "Sapi";
void TampilkanSapi () {
System.out.println("dan Mamalia yang Anda pilih adalah "+ x );
System.out.println("Mamalia ini berada di darat");
System.out.println("Sapi termasuk jenis mamalia pemamahbiak");
}}
class Turunan {
public static void main(String[] args) throws IOException{
String sInput = null ;
System.out.println("____JENIS MAMALIA____");
System.out.println("[1]. IKAN PAUS");
System.out.println("[2]. CHEETAH");
System.out.println("[3]. SAPI");
System.out.print("Masukkan pilihan [1..3] :");
Mamalia generalx = new Mamalia();
Paus turunan1 = new Paus();
Cheetah turunan2 = new Cheetah();
Sapi turunan3 = new Sapi ();
Sapi subxc = new Sapi();
InputStreamReader inputan = new InputStreamReader(System.in);
BufferedReader jm = new BufferedReader(inputan);
sInput = jm.readLine();
int i = Integer.parseInt(sInput);
switch (i) {
case 1 :
generalx.KelasMamalia ();
turunan1.TampilkanPaus ();break;
case 2 :
generalx.KelasMamalia ();
turunan2.TampilkanCheetah ();break;
case 3 :
generalx.KelasMamalia ();
turunan3.TampilkanSapi ();break;
default:
System.out.println("Pilihan yang Anda masukkan salah!!");break;
}
}
}
Outputnya =
POLIMORFISME
Polimorfisme yaitu suatu teknik dalam programming
yang lebih mengarahkan kita untuk memprogram secara general dari pada
secara spesifik. Sebagai contoh seumpama kita memiliki 3 class berbeda
yaitu: “Motor”, “Mobil” dan “Pesawat”. Dimana ketiga class tersebut
adalah turunan dari class “Kendaraan”. Dalam kelas kedaraan terdapat
suatu method yaitu “Move()”, akan tetapi apakah method “Move()” akan
memberikan hasil yang sama pada tiga class tersebut. Dimana jika method
“Move()” dipanggil pada class “Motor” akan menghasilkan perpindahan
30Km, jika pada class “Mobil” akan menghasilkan perpindahan 70Km dan
jika dipanggil pada class “Pesawat” akan menghasilkan perpindahan 300Km.
Hal inilah yang kita sebut sebagai Polimorfisme , yaitu
penggunaan method yang sama, yang akan menghasilkan suatu hasil yang
berbeda tergantung class yang menggunakan method tersebut.Polimorfisme juga bisa diartikan satu bentuk banyak aksi. Dalam pewarisan
polimorfisme dapat kita lakukan. Kita data memerintah sebuah objek untuk
melakukan tindakan yang secara prinsip sama tapi secara proses berbeda.
contoh coding = public class Mobil { public void injakPedalGas(){ System.out.println("Mobil berjalan..."); } } public class Kijang extends Mobil{ public void injakPedalGas(){ System.out.println("Mobil Melaju dengan kecepatan 80 Km/jam..."); } } public class Escudo extends Mobil { public void injakPedalGas(){ System.out.println("Mobil Melaju dengan kecepatan 70 Km/jam..."); } } public class BMW extends Mobil{ public void injakPedalGas(){ System.out.println("Mobil Melaju dengan kecepatan 100 Km/jam..."); } } public class TestMobil { public static void main(String[] args){ Mobil mobil = new Mobil(); Kijang kijang = new Kijang(); Escudo escudo = new Escudo(); BMW bmw = new BMW(); mobil.injakPedalGas(); mobil = kijang; mobil.injakPedalGas(); mobil = escudo; mobil.injakPedalGas(); mobil = bmw; mobil.injakPedalGas(); } }
Di postingkan oleh ANDI dan VERNELL
sumber = http://nur-arianto.blogspot.com/2009/11/inheritance-pada-java.html
http://sinau-java.blogspot.com/2008/05/polimorfisme-dalam-pewarisan.html
No comments:
Post a Comment