Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

PEWARISAN Pertemuan 7.

Presentasi serupa


Presentasi berjudul: "PEWARISAN Pertemuan 7."— Transcript presentasi:

1 PEWARISAN Pertemuan 7

2 Definisi Pewarisan Salah satu ciri pemrograman berorientasi objek.
Suatu kelas dapat diturunkan lagi menjadi kelas-kelas baru lainnya sehingga dapat membentuk sebuah hirarki. Kelas turunan akan mewarisi sifat-sifat yang terdapat pada kelas induknya.

3 Superclass dan Subclass
Kelas induk yang diturunkan disebut dengan superclass Kelas baru hasil turunan disebut dengan subclass Selain mewarisi sifat-sifat dari superclass, subclass dapat memiliki sifat-sifat spesifik.

4 Contoh Pewarisan Binatang Herbivora Kambing Kerbau Karnivora Harimau
Anjing

5 Membuat Subclass Java menyediakan kata kunci “extends” yang digunakan untuk melakukan proses penurunan terhadap suatu kelas. Bentuk umum dari penggunaan “extends” sebagai berikut: class nama-subclass extends nama-superclass { //badan kelas }

6 class A { private int a; public void setA(int nilai) { a = nilai; } public int getA() { return a; //membuat kelas turunan (subclass) dari kelas A class B extends A { private int b; public void setB(int nilai) { b = nilai; public int getB() { return b; //membuat kelas turunan (subclass) dari kelas B class C extends B { private int c; public void setC(int nilai) { c = nilai; public int getC() { return c; //memanggil setiap class class DemoKelasTurunan2 { public static void main(String[] args) { //melalukan instanisasi terhadap kelas C C obj = new C(); //memberi nilai untuk kelas C obj.setA(100); obj.setB(200); obj.setC(300); //hasil/keluaran di layar System.out.println("Nilai a : "+ obj.getA()); System.out.println("Nilai b : "+ obj.getB()); System.out.println("Nilai c : "+ obj.getC());

7 Kata Kunci “SUPER” Antara subclass dan subclass terakang memiliki data dan parameter yang sama, hal ini bisa menyebabkan redudansi Untuk menghindari redudansi, dapat digunakan kata kunci “super” Contoh: KotakPejal (int p, int l, int t, int v) { super(p, l, t); berat = b; }

8 Penggunaan super Dapat memanggil parameter (seluruh data) yang terdapat pada kelas induk. Dapat memanggil sebagian data atau method yang merupakan anggota dari kelas Induk. Dalam contructor kelas turunan, super() harus ditempatkan pada bagian awal (baris pertama)

9 class Kotak { protected double panjang; protected double lebar; protected double tinggi; //default contructor Kotak() { panjang = lebar = tinggi = 0; } Kotak(int p, int l, int t) { panjang = p; lebar = l; tinggi = t; public double hitungVolume() { return (panjang * lebar * tinggi); class KotakPejal extends Kotak { private double berat; KotakPejal(int p, int l, int t, int b) { super(p, l, t);//memanggil contructor kelas Kotak berat = b; public double getBerat() { return berat; class DemoSuper1 { public static void main(String[] args) { //melakukan instansiasi terhadap kelas turunan KotakPejal K = new KotakPejal(6, 5, 4, 3); System.out.println("Volume K : " + K.hitungVolume()); System.out.println("Berat K : " + K.getBerat());

10 class A { protected int a; } class B extends A { private int a;//akan menimpa nilai a hasil turunan dari kelas A //contructor B(int nilai1, int nilai2) { super.a = nilai1;//a di dalam kelas A a = nilai2;//a di dalam kelas B public void tampilkanNilai() { System.out.println("Nilai a di dalam kelas A : " + super.a); System.out.println("Nilai a di dalam kelas A : " + a); class DemoSuper3 { public static void main(String[] orgs) { B obj = new B(121, 212); obj.tampilkanNilai();

11 Polimorfisme Kemampuan suatu objek untuk mengungkap banyak hal melalui satu cara yang sama Dalam polimorfisme, kelas induk mendefinisikan sebuah method general (bersifat umum) untuk semua kelas turunannya Kelas-kelas turunanya dapat memperbarui implementasi dari mthod tersebut secara lebih spesifik sesuai dengan karakteristik masing-masing kelas

12 class Bentuk { public double luas() { System. out
class Bentuk { public double luas() { System.out.println("tidak didefinisikan"); return 0; } class PersegiPanjang extends Bentuk { private double panjang; private double lebar; PersegiPanjang(int p, int l) { panjang = p; lebar = l; System.out.println("dalam objek persegi panjang: "); return (panjang * lebar); class BujurSangkar extends Bentuk { private double sisi; BujurSangkar(int s) { sisi = s; System.out.println(":dalam objek bujur sangkar: "); return (sisi * sisi); class demoPolimorfisme2 { public static void main(String[] args) { Bentuk kotak; PersegiPanjang kotakpp = new PersegiPanjang(5,3); BujurSangkar kotakbs = new BujurSangkar(4); //kotak mengacu pada persegi panjang kotak = kotakpp; System.out.println("Luas : " + kotak.luas()); //kotak mengacu pada bujur sangkar kotak = kotakbs;


Download ppt "PEWARISAN Pertemuan 7."

Presentasi serupa


Iklan oleh Google