penuruan class
DESCRIPTION
Penuruan Class. D3 TKJ Teknik Elektro Unsoed 2007. Inheritance. Inheritance merupakan pewarisan atribut(variable) dan method pada sebuah class yang diperoleh dari sebuah class yang telah terdefinisi. - PowerPoint PPT PresentationTRANSCRIPT
D3 TKJ 2007
Penuruan Class
D3 TKJ Teknik Elektro Unsoed 2007
Bangun Wijayanto, ST.
Inheritance Inheritance merupakan pewarisan
atribut(variable) dan method pada sebuah class yang diperoleh dari sebuah class yang telah terdefinisi.
Sebagai contoh class sepeda mempunyai sub class sepeda motor, sepeda balap, sepeda gunung.
Bangun Wijayanto, ST.
Setiap turunan dari class sepeda itu mempunyai behaviour(method) dan atribut yang diwariskan dari class sepeda. Jadi setiap subclass akan mewarisi state(variable-variabel) dan behaviour(method-method) dari superclass nya.
Subclass kemudian dapat menambahkan state (variable) dan behaviour (method) baru yang spesifik dan dapat pula memodifikasi state atau behaviour yang diturunkan oleh superclassnya
Bangun Wijayanto, ST.
Keuntungan Pewarisan Subclass kemudian dapat menambahkan state
(variable) dan behaviour (method) baru yang spesifik dan dapat pula memodifikasi state atau behaviour yang diturunkan oleh superclassnya
Programer java dapat mendefinisikan kelas khusus yang bersifat generic, atau yang sering disebut sebagai abstrak class untuk mendefinisikan class dengan tingkah laku dan state umum.
Bangun Wijayanto, ST.
Contoh
Class Sepeda{double roda;double stang;double rantai;/*konstruktor*/
Kotak(){roda=2;stang=1;rantai=1;
}Sepeda(double r, double s, double t){
roda=r;stang=s;rantai=t;
}
}
Bangun Wijayanto, ST.
Class turunannya
Class SepedaMotpr extend Sepeda{Double Mesin;
/*konstruktor*/
SepedaMotor(double r, double s, double t, double m){roda=r;stang=s;rantai=t;Mesin=m;
}}
Bangun Wijayanto, ST.
ContohClass Kotak{double panjang;double Lebar;double Tinggi;/*konstruktor*/
Kotak(){panjang=0;lebar=0;tinggi=0;
}Kotak(double p, double l, double t){
panjang=p;lebar=l;tinggi=t;
}Public double volume(){
return(panjang*lebar*tinggi);}
}
Bangun Wijayanto, ST.
Dari class kotak tersebut diturunkan ke kelas kotak yang memiliki berat
Class KotakBerat extend Kotak{Double Berat;
/*konstruktor*/
Kotak(double p, double l, double t, double m){panjang=p;lebar=l;tinggi=t;Berat=w;
}}
Bangun Wijayanto, ST.
Ilustrasi
Class Kotak
Class KotakBerat
D3 TKJ 2007
KONSEP POLYMORPHISM
D3 TKJ Teknik Elektro Unsoed 2007
Bangun Wijayanto, ST.
Polymorphism adalah konsep OOP tentang banyak bentuk (poly = banyak, morphism = bentuk).
Disini banyak bentuk maksudnya bahwa objek yang dasarnya sama tapi bertindak/bertingkah laku berbeda-beda
Bangun Wijayanto, ST.
Dalam dunia nyata misalnya, ada class abstract mahkluk hidup, disebut abstract karena belum tau wujudnya, nah mahkluk hidup punya method untuk bergerak yang masih abstract belum tau gimana geraknya.
Kemudian ada class manusia turunan mahkluk hidup, dan ada juga class burung turunan mahkluk hidup, manusia disuruh bergerak sudah barang tentu jalan, sedangkan burung disuruh bergerak terbang.
Bangun Wijayanto, ST.
Jadi walaupun dasarnya sama berasal dari class abstract mahkluk hidup tapi manusia disuruh bergerak akan berjalan dan burung disuruh bergerak akan terbang, kecuali manusianya superman bisa terbang juga.
Bangun Wijayanto, ST.
Class Abstrak Kelas abstrak digunakan untuk mendefinisikan
sebuah class yang hanya mendefinisikan format generic tanpa mengimplementasikan secara detail fungsi-fungsi dari kelas abstrak yang ada.
Bangun Wijayanto, ST.
kita tau bahwa bangun 2 dimensi itu bisa mencetak luas dan Setiap bangun 2 dimensi memiliki cetak luas dan keliling, kemudian kita bentuk class-class bangun 2 dimensi implementasinya, seperti persegi panjang dan bujur sangkar
Bangun Wijayanto, ST.
Bagaimana membuat Class Abstrak
public abstract class Bangun2D {public abstract void cetakLuas();public abstract void cetakKeliling();}
Bangun Wijayanto, ST.
Class Turunannya
public class BujurSangkar extends Bangun2D {private int sisi;public BujurSangkar(int sisi) { this.sisi = sisi;}
public void cetakLuas() {int luas = sisi * sisi;System.out.println(luas);}
public void cetakKeliling() {int keliling = 4 * sisi;System.out.println(keliling);}
}
Bangun Wijayanto, ST.
Tugas
Nomor 1 Buatlah Class Pegawai yang mempunyai
spesifikasi sebagai berikut Nama, nip, alamat, gaji Class OB adalah turunan pegawai yang
mempunyai spesifikasi keahlian Class HRD adalah turunan pegawai yang
mempunyai spesifikasi unit kerja dan jenjang karir
Buatlah ketiga class tersebut dalam Java
Bangun Wijayanto, ST.
Tugas
Nomor 2 Buatlah contoh konsep Polymorphism untuk
perhitungan bangun 3d Buatlah Class trurunan dari Class abstrak bangun
3d tersebut (min 4 class turunan)
Bangun Wijayanto, ST.
Class Kotak adalah Class yang memiliki spesifikasi state panjang dan lebar dan memiliki behaviour hitung luas
Kubus dan balok adalah turunan class tersebut dengan memiliki tambahan state yang spesifik berupa tinggi dan memiliki behaviour berupa method hitung volume
Buatlah class-class tersebut dan jalankan dalam class penguji