Pewarisan (Inheritance)

Slides:



Advertisements
Presentasi serupa
Pemrograman Berorientasi Objek
Advertisements

Kelas & Objek.
Other OOP Basic Viska Mutiawani, M.Sc. Konsep penting Method overloading Encapsulation this keyword final static.
Nur Hayatin, S.ST Jurusan Teknik Informatika Universitas Muhammadiyah Malang Sem Genap 2010.
POLIMORFISME Imam Fahrur Rozi 01.
ABSTRACT CLASS Imam Fahrur Rozi.
Abstract Class & Interface
Pemrograman JAVA (TIB09)
Inheritance.
Modul 1- Review Java.
Overriding, Overloading, Polymorphism
INHERITANCE.
Inheritance Ery Setiyawan Jullev A.
Inheritance (Pewarisan)
1.Polymorphism Polymorphism adalah konsep yang memungkinkan mendefinisikan metod pada class anak (sub class) yang memiliki definisi sama dengan metod.
Overriding, Overloading, Polymorphism
Encapsulation, Inheritance, polymorphism, dan interface
INHERITANCE, POLYMORPHISM, DAN INTERFACE
Pewarisan, Polimorfisme, dan Interface
ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM
- PERTEMUAN 6- INTERFACE
Abstract Class.
Pertemuan : Object Oriented Programming
Pemrograman Berorientasi Obyek dengan JAVA Interface
Object Oriented Programming with JAVA 2011/2012
Inheritance Konsep Inheritance Protected Member
INHERITANCE / PEWARISAN
Inheritance Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 4 Tahun : 2008 Versi : 1/0.
Inheritance, polymorphism, dan interface
Advanced Class Features 2
INHERITANCE (Oleh : Nur Hayatin, S.ST)
Algoritma &Pemrograman 1
MATERI IV OOP (Object Oriented Programming) Chapter II.
Pertemuan 6 PEWARISAN AND POLYMORPHISM
Polymorphism Pertemuan 9 Matakuliah: M0864/Programming I Tahun: 2009.
PEWARISAN Pertemuan 7.
POLYMORPHISM, ABSTRACT CLASS DAN INTERFACE
Inheritance (Pewarisan)
POLYMORPHISM (KEBANYAKRUPAAN)
Pemograman Berorientasi Objek
Object Oriented Programming
POLYMORPHISM, ABSTRACT CLASS DAN INTERFACE
@kovazzevic | SMKN 24 Jakarta
POLYMORPHISM (KEBANYAKRUPAAN)
Inheritance Pertemuan 8
Pewarisan Disusun Oleh: Reza Budiawan Untuk:
Abstract Class.
POLYMORPHISM.
Algoritma & Pemrograman 1
Pemrograman Berorientasi Objek
ABSTRACT CLASS DAN INTERFACE
Pewarisan (Inheritance)
KONSEP OOP INHERITANCE (PEWARISAN) Encapsulation (enkapsulasi)
Kelas & Objek.
Object Oriented Programming
Matakuliah : M0864/Programming I
Interface Pertemuan 2.
Inheritance (Pewarisan)
INHERITANCE SUSSI.
ABSTRACT CLASS DAN INTERFACE
Visibility, Getter Setter, Pewarisan, Overloading dan Overriding
Visibility, Getter Setter, Pewarisan, Overloading dan Overriding
Subclassing and Inheritance
Interface pada Java Untuk memahami lebih mudah, interface sekumpulan dari method-method yang dibuat tapi belum ada operasi di dalam tubuh method tersebut,
Polimorphism Dosen Pengampu : Nur Iksan.
PEWARISAN Kelompok : Alim Mutohidin ( )
Oleh : Rahmat Robi Waliyansyah, M.Kom.
Dasar-dasar Pemrograman Berbasis Obyek. kelas Kelas pada java didefinisikan dengan menggunakan kata kunci class.
Pemrograman Berorientasi Objek
FONDASI PEMROGRAMAN & STRUKTUR DATA #8
Transcript presentasi:

Pewarisan (Inheritance)

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

Deskripsi Pewarisan 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

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

Bagaimana membuat kelas B dari kelas A? Bagaimana caranya? A - varA + getA() + setA(int a) A B C Bagaimana membuat kelas B dari kelas A?

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

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

Kelas A

Kelas B & C Kelas B Kelas C

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

Contoh Overriding Method Manusia +printData Mahasiswa +printData MhsReguler +printData

Kelas Manusia

Kelas Mahasiswa & MhsReguler

Latihan 1 Untuk kelas Bentuk : getWarna adl method yang akan mengembalikan nilai variabel warna setWarna adl method untuk mengubah nilai variabel warna printInfo adl method yang akan menuliskan “Bentuk berwarna [warna]” Untuk kelas BujurSangkar : getSisi adl method yang akan mengembalikan nilai variabel sisi setSisi adl method untuk mengubah nilai variabel sisi hitungLuas adl method yang akan mengembalikan hasil perhitungan luas bujursangkar printInfo adl method yang akan menuliskan “Bujursangkar berwarna [warna], luas = [luas]” Bentuk - warna + constructor (String warna) + String getWarna() + void setWarna(String warna) + void printInfo() BujurSangkar - sisi + constructor (double sisi, String warna) + double getSisi() + void setSisi(double sisi) + double hitungLuas() + void printInfo()

Latihan 2 Buatlah kelas Lingkaran sbg turunan kelas Bentuk. Lingkaran constructor akan menginisialisasi radius dan warna getRadius adl method yang akan mengembalikan nilai variabel radius setRadius adl method untuk mengubah nilai variabel radius hitungLuas adl method yang akan mengembalikan hasil perhitungan luas lingkaran (PHI jadikan sbg konstanta kelas) printInfo adl method yang akan menuliskan “Lingkaran [warna], luas = [luas]” Lingkaran - radius + constructor (double radius, String warna) + double getRadius() + void setRadius(double r) + double hitungLuas() + void printInfo()

Latihan 3 Buatlah kelas Silinder sbg turunan kelas Lingkaran constructor akan menginisialisasi variabel tinggi, radius, dan warna getTinggi adl method yg akan mengembalikan tinggi setTinggi adl method yg akan mengubah tinggi hitungVolume adl method yg akan mengembalikan hasil perhitungan volum silinder printInfo adl method yg akan menuliskan “Silinder warna [warna], volume = [volume]” Silinder - tinggi + constructor (double tinggi, double radius, String warna) + double getTinggi() + void setTinggi(double t) + double hitungVolume() + void printInfo()

polimorfisme (polymorphisme)

Deskripsi Polimorfisme Terdapat 3 objek : bebek, anjing, dan kucing Ketiganya diberikan perintah yang sama : speak Ketiga objek memberikan respon yang berbeda untuk perintah yang sama Inilah POLIMORFISME

Definisi Polimorfisme Adalah kemampuan sebuah variabel reference untuk memberikan respon yang berbeda thd message yang sama bergantung pada objek yang ditunjuknya. Polimorfisme melibatkan kelas-kelas yang berada pada hirarki pewarisan.

Contoh Polimorfisme (1) Output : Lingkaran berwarna Biru, luas = 314.0 Silinder berwarna Kuning, volume = 3768.0

Kelas Bentuk

Kelas Lingkaran

Kelas Silinder

Contoh Polimorfisme (2)

Kelas Animal Kelas Eagle

Kelas Frog Kelas Fish

abstract class

Deskripsi Abstract Class Abstract class adalah kelas yang di dalamnya terdapat method abstrak. Method abstrak adalah method yang hanya terdiri atas definisi dan tidak memiliki implementasi. Contoh : public void printInfo(); Tujuan membuat kelas abstrak adalah menyediakan kelas yang memiliki method-method yang dapat digunakan bersama oleh kelas-kelas turunannya.

Kita tidak dapat membuat objek dari kelas abstrak, tetapi kita dapat membuat variabel bertipe kelas abstrak. Kelas turunan dari kelas abstrak harus meng-override method abstrak dan melengkapinya. Jika tidak maka kelas turunan tsb juga menjadi kelas abstrak.

Contoh Abstract Class Staf abstract void bayarGaji() Programmer +public void bayarGaji() SistemAnalis +public void bayarGaji()

Kelas Staf Kelas Programmer

Kelas SistemAnalis

interface

Deskripsi Interface Interface adalah struktur mirip kelas yang hanya terdiri dari : konstanta dan abstract method. Format interface : interface [nama_interface] { //deklarasikan konstanta //deklarasikan method abstrak }

Cara menggunakan interface : membuat kelas yang implements interface Kelas yang implements interface wajib mengoverride seluruh method yang ada di interface. Sama dg abstract class, interface tidak dapat diinstansiasi tp kita dapat membuat variabel yang bertipe interface. Sama dg abstract class, interface juga dapat berperan dalam POLIMORFISME.