Pewarisan Inheritance Tujuan Di akhir pertemuan mahasiswa diharapkan

  • Slides: 16
Download presentation
Pewarisan (Inheritance)

Pewarisan (Inheritance)

Tujuan Di akhir pertemuan, mahasiswa diharapkan : 1. Memahami konsep pewarisan (inheritance) secara umum

Tujuan Di akhir pertemuan, mahasiswa diharapkan : 1. Memahami konsep pewarisan (inheritance) secara umum 2. Mampu mengimplementasikan pewarisan dengan Java Slide 2

Deskripsi Pewarisan l l l Pewarisan merupakan mekanisme/cara membuat kelas baru dari kelas yang

Deskripsi Pewarisan l l l Pewarisan merupakan mekanisme/cara membuat kelas baru dari kelas yang sudah ada. Kelas yang sudah ada superclass Kelas turunan subclass Superclass bersifat lebih UMUM dari subclass Subclass akan mewarisi sifat-sifat dari superclass. (Sifat : variabel & method) Keyword : extends Slide 3

Contoh Pewarisan superclass Bentuk subclass Dua Dimensi Lingkaran Bujursangkar Tiga Dimensi Bola Kubus Slide

Contoh Pewarisan superclass Bentuk subclass Dua Dimensi Lingkaran Bujursangkar Tiga Dimensi Bola Kubus Slide 4

Bagaimana caranya? A B A - var. A + get. A() + set. A(int

Bagaimana caranya? A B A - var. A + get. A() + set. A(int a) C Bagaimana membuat kelas B dari kelas A? Slide 5

Pemanggilan Constructor pada Pewarisan Dalam hirarki pewarisan, pemanggilan constructor saat pembuatan objek akan dilakukan

Pemanggilan Constructor pada Pewarisan Dalam hirarki pewarisan, pemanggilan constructor saat pembuatan objek akan dilakukan berurutan. l Urutan pertama adalah kelas paling atas, kemudian ke turunannya, dst. l Slide 6

Contoh A +constructor B C c = new C(); l Output : Constructor A

Contoh A +constructor B C c = new C(); l Output : Constructor A Constructor B Constructor C l +constructor C +constructor Slide 7

Kelas A Slide 8

Kelas A Slide 8

Kelas B & C l Kelas B l Kelas C Slide 9

Kelas B & C l Kelas B l Kelas C Slide 9

Overriding Method Override vs Overload l Override mendefinisikan method di kelas turunan yang nama

Overriding Method Override vs Overload l Override mendefinisikan method di kelas turunan yang nama dan daftar parameternya sama dengan method di kelas induk. l Slide 10

Contoh Overriding Method Manusia +print. Data Mahasiswa +print. Data Mhs. Reguler +print. Data Slide

Contoh Overriding Method Manusia +print. Data Mahasiswa +print. Data Mhs. Reguler +print. Data Slide 11

Kelas Manusia Slide 12

Kelas Manusia Slide 12

Kelas Mahasiswa & Mhs. Reguler Slide 13

Kelas Mahasiswa & Mhs. Reguler Slide 13

Latihan 1 Bentuk - warna + + constructor (String warna) String get. Warna() void

Latihan 1 Bentuk - warna + + constructor (String warna) String get. Warna() void set. Warna(String warna) void print. Info() Bujur. Sangkar - sisi + constructor (double sisi, String warna) + double get. Sisi() + void set. Sisi(double sisi) + double hitung. Luas() + void print. Info() Untuk kelas Bentuk : l get. Warna adl method yang akan mengembalikan nilai variabel warna l set. Warna adl method untuk mengubah nilai variabel warna l print. Info adl method yang akan menuliskan “Bentuk berwarna [warna]” Untuk kelas Bujur. Sangkar : l get. Sisi adl method yang akan mengembalikan nilai variabel sisi l set. Sisi adl method untuk mengubah nilai variabel sisi l hitung. Luas adl method yang akan mengembalikan hasil perhitungan luas bujursangkar l print. Info adl method yang akan menuliskan “Bujursangkar berwarna [warna], luas = [luas]”

Latihan 2 l Buatlah kelas Lingkaran sbg turunan kelas Bentuk. Lingkaran - radius +

Latihan 2 l Buatlah kelas Lingkaran sbg turunan kelas Bentuk. Lingkaran - radius + + + l l l constructor (double radius, String warna) double get. Radius() void set. Radius(double r) double hitung. Luas() void print. Info() constructor akan menginisialisasi radius dan warna get. Radius adl method yang akan mengembalikan nilai variabel radius set. Radius adl method untuk mengubah nilai variabel radius hitung. Luas adl method yang akan mengembalikan hasil perhitungan luas lingkaran (PHI jadikan sbg konstanta kelas) print. Info adl method yang akan menuliskan “Lingkaran [warna], luas = [luas]” Slide 15

Latihan 3 l Buatlah kelas Silinder sbg turunan kelas Lingkaran Silinder - tinggi +

Latihan 3 l Buatlah kelas Silinder sbg turunan kelas Lingkaran Silinder - tinggi + + + constructor (double tinggi, double radius, String warna) double get. Tinggi() void set. Tinggi(double t) double hitung. Volume() void print. Info() l constructor akan menginisialisasi variabel tinggi, radius, dan warna get. Tinggi adl method yg akan mengembalikan tinggi set. Tinggi adl method yg akan mengubah tinggi hitung. Volume adl method yg akan mengembalikan hasil perhitungan volum silinder print. Info adl method yg akan menuliskan “Silinder warna [warna], volume = [volume]” l l Slide 16