Posted by : Fun To Programming
Minggu, 15 April 2012
Pengertian Inherintance
Adalah proses pewarisan data dan method dari suatu kelas kepada kelas lain.
Memliki sifat:
-Pewarisan bersifat menyeluruh
-Semua daya dan method milik kelas asalanya diturunkan ke kelas baru
-Kelas yang mewariskan -> Super Class atau Kelas Induk
-Kelas yang diwariskan-> Sub Class atau Kelas anak
-Misal:
Kelas B adalah kelas anak dari kelas A,maka sifat-sifat dari kelas A otomatis akan dimiliki juga oleh kelas B
-Jika kelas Induk merupakan turunan dari kelas lain.maka data dan method yang berasal dari kelas tersebut akan ikut diwariskan pula kepada kelas anaknya.
Contoh:
-Kelas C adalah kelas anak dari kelas B
-Kelas B merupakan kelas anak dari kelas A
-Maka sifat-sifat yang diwariskan kelas A ke kelas B juga akan diwariskan ke kelas C
-Keyword untuk pewarisan :extends
Contoh program
Class Induk{
Private String var1;
Public int var2;
Induk(){
}
Public void cetakData(){
}
}
class Anak extends Induk{
private String dataAnak;
Anak(){
}
Public void cetak(){
CetakData();
}
}
class DemoPewarisan {
Public static void main(String args[]){
Anak anak = new Anak ();
anak.cetak();
anak.cetakData();
System.out.println(“Demo Pewarisan”);
System.out.println(“Isi var 2 =”+anak.var2”);
}
}
Keuntungan Pewarisan
-Bersifat reusable
-> Tidak harus menyalin semua data dan method dari suatu kelas jika akan menggunakannya lagi
-Kemudahan dalam me-manage kelas yang memiliki data dan method yang sama
-Untuk memodifikasi suatu data atau method untuk semua subkelas/kelas anak,maka tidak perlu melakukan perubahan di masing-masing kelas anak melahirkan hanya pada kelas induk saja
Output Program
Polimorfisme
-Polimorfisme ->sesuatu yang memiliki banyak bentuk
-Dalam pemrograman,polimorfisme dapat diartikan sebagai modul yang memiliki nama sama,namun memiliki behaviour(tingkah laku) yang berbedda sehingga listing code implementasinya juga berbeda
Listing Program
class Hewan {
private String jenis;
private int kaki;
Hewan (){
}
Hewan (String jenis, int kaki){
this.jenis = jenis;
this.kaki = kaki;
}
public void bersuara() {
System.out.print("suara hewan "+jenis+" berkaki"+kaki);
}
}
class Anjing extends Hewan {
Anjing() {
super();
}
public void bersuara() { //overriding method
System.out.println("guk guk guk....");
}
}
Pemrog. Berorientasi Objek **, Pertemuan Ke-5
Noviyanto, ST Halaman 4
class Kucing extends Hewan {
Kucing(String jenis, int kaki) {
super(jenis, kaki);
}
public void bersuara() { //overriding method
super.bersuara();
System.out.println( miaowwww....");
}
}
class DemoPoli {
public static void main(String args[]) {
Anjing doggy = new Anjing();
Kucing tom = new Kucing("Kucing", 4);
doggy.bersuara();
tom.bersuara();
}
private String jenis;
private int kaki;
Hewan (){
}
Hewan (String jenis, int kaki){
this.jenis = jenis;
this.kaki = kaki;
}
public void bersuara() {
System.out.print("suara hewan "+jenis+" berkaki"+kaki);
}
}
class Anjing extends Hewan {
Anjing() {
super();
}
public void bersuara() { //overriding method
System.out.println("guk guk guk....");
}
}
Pemrog. Berorientasi Objek **, Pertemuan Ke-5
Noviyanto, ST Halaman 4
class Kucing extends Hewan {
Kucing(String jenis, int kaki) {
super(jenis, kaki);
}
public void bersuara() { //overriding method
super.bersuara();
System.out.println( miaowwww....");
}
}
class DemoPoli {
public static void main(String args[]) {
Anjing doggy = new Anjing();
Kucing tom = new Kucing("Kucing", 4);
doggy.bersuara();
tom.bersuara();
}
}
Output Program