penuruan class

20
D3 TKJ 2007 Penuruan Class D3 TKJ Teknik Elektro Unsoed 2007

Upload: burian

Post on 01-Feb-2016

127 views

Category:

Documents


2 download

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 Presentation

TRANSCRIPT

Page 1: Penuruan Class

D3 TKJ 2007

Penuruan Class

D3 TKJ Teknik Elektro Unsoed 2007

Page 2: Penuruan Class

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.

Page 3: Penuruan Class

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

Page 4: Penuruan Class

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.

Page 5: Penuruan Class

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;

}

}

Page 6: Penuruan Class

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;

}}

Page 7: Penuruan Class

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);}

}

Page 8: Penuruan Class

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;

}}

Page 9: Penuruan Class

Bangun Wijayanto, ST.

Ilustrasi

Class Kotak

Class KotakBerat

Page 10: Penuruan Class

D3 TKJ 2007

KONSEP POLYMORPHISM

D3 TKJ Teknik Elektro Unsoed 2007

Page 11: Penuruan Class

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

Page 12: Penuruan Class

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.

Page 13: Penuruan Class

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.

Page 14: Penuruan Class

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.

Page 15: Penuruan Class

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

Page 16: Penuruan Class

Bangun Wijayanto, ST.

Bagaimana membuat Class Abstrak

public abstract class Bangun2D {public abstract void cetakLuas();public abstract void cetakKeliling();}

Page 17: Penuruan Class

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);}

}

Page 18: Penuruan Class

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

Page 19: Penuruan Class

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)

Page 20: Penuruan Class

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