SlideShare a Scribd company logo
1 of 15
- PERTEMUAN 3-
INHERITANCE
PBO
Inheritance (Pewarisan)
 Pewarisan merupakan konsep dalam PBO yang
memungkinkan untuk membuat suatu kelas
dengan didasarkan pada kelas yang sudah ada,
sehingga mewarisi semua metode dan
variabelnya.
 Tidak perlu menuliskan kode dari nol.
 Semua metode dan variabel instan yang terdapat
pada kelas dasar diturunkan ke kelas turunan.
 Namun, kelas turunan dapat menambahkan
metode baru atau variabel instan baru tersendiri.
Konsep Inheritance
Kelas A
(Kelas Dasar)
variabelInstanZ
metodeX()
metodeY()
Kelas B
(Kelas Turunan)
metodeW()
Dengan
sendirinya
KelasB mewarisi
semua metode
dan variabel
instan milik
KelasA, yang
tidak bersifat
private.
Metode tambahan
Contoh Inheritance
Keyword extends digunakan untuk menyatakan bahwa
suatu class merupakan turunan dari class lain. Sebuah
class tidak boleh memiliki lebih dari satu class induk
Penentu Akses Protected
 Penentu akses ini berguna untuk mengatur agar
suatu variabel instans maupun metode yang
terdapat pada sebuah kelas, dapat diakses pada
kelas itu sendiri dan pada sub kelas.
Akan muncul pesan kesalahan :
Undifined variable : a
Kata Kunci
Super
class Orang {
private String nama;
private int usia;
//Konstruktor
public Orang(String nama, int usia) {
this.nama = nama;
this.usia = usia;
}
//Metode
public void info() {
System.out.println("Nama : " +
this.nama);
System.out.println("Usia : " +
this.usia);
}
}
class Pegawai extends Orang {
protected String noPegawai;
//Konstruktor
public Pegawai(String noPegawai, String
nama, int usia) {
super(nama, usia);
this.noPegawai = noPegawai;
}
//Metode
public void info() {
System.out.println("No. Pegawai : " +
this.noPegawai);
super.info();
}
}
public class KonstruktorSuperkelas {
public static void main (String[] args) {
Pegawai p1 = new Pegawai("101",
"Edi", 25);
p1.info();
}
}
Beberapa hal yang harus diingat ketika
menggunakan pemanggil konstuktor super:
 1. Pemanggil super() HARUS DIJADIKAN
PERNYATAAN PERTAMA DALAM constructor.
 2. Pemanggil super() hanya dapat digunakan
dalam definisi constructor.
 3. Termasuk constructor this() dan pemanggil
super() TIDAK BOLEH TERJADI DALAM
constructor YANG SAMA.
 Simpan dengan nama
Inheritance1.java
class Inheritance1
{
private String nim;
private String nama;
public void setnim (String vnim) {
nim=vnim;
}
public void setnama (String
vnama){
nama=vnama;
}
public String getnim() {
return (nim);
}
public String getnama() {
return (nama);
}
public void display() {
System.out.println(“NPM”+getnim(
Simpan dengan nama Inheritance2.java
class Inheritance2 extends Inheritance1 {
private double ip;
public void setip (double vip) {
ip=vip;
}
public double getip() {
return(ip);
}
public void display() {
System.out.println(“Nama :
“+getnama());
System.out.println(“NIM : “+getnim());
System.out.println(“IP : “+getip());
}
}
Simpan dengan nama
InheritanceCoba.java
public class InheritanceCoba {
public static void main(String[] args) {
Inheritance2 ap1=new Inheritance2();
ap1.setnim(“56410268″);
ap1.setnama(“Rudy Eriyanto “);
ap1.setip(3.5);
ap1.display();
}
}
Contoh lain
Profesi
Orang
MHS Dokter Dosen Pegawai
Nama Nama Nama Nama
Usia Usia Usia Usia
Jurusan Spesialis MK Dinas
Nam
a
Usia
Polymorphism
 Beberapa objek dalam 1 hierarki bisa jadi
memiliki method yang sama, namun
implementasinya berbeda-beda.
 Contoh : objek geometri dengan method
drawing().
 Implementasinya di objek kotak berbeda dengan
implementasinya di objek lingkaran atau segitiga.
 Contoh lain : objek hewan dengan method
suara().
 Implementasinya di objek, suara kucing berbeda
dengan suara harimau, dsb.
 Kondisi dimana sebuah perintah direspon
Contoh Polymorphism
class Hewan{
public void suara() {}
}
class Kucing {
public void suara() {
System.out.println(“Kucing mengeong…”);
}
}
class Harimau {
public void suara() {
System.out.println(“Harimau Mengaung…”);
}
}
public class TestPolymorphism {
public static void main (String[] args) {
cetak(new Hewan());
cetak (new Kucing());
cetak(new Harimau());
}
static void cetak(Hewan x) {
x.suara();
}
}
Package (Paket)
 Package adalah istilah untuk menyatakan folder
dimana terdapat sekumpulan class dengan
fungsional sejenis.
 Contoh package bawaan java :
 Java.awt
 Javax.swing
 Java.sql
 Java.applet
 Meski demikian, user diperbolehkan membuat
pakage sendiri.
 Isi sebuah package adalah sekumpulan file .class
yang siap pakai.
Deklarasi Package
 Buatlah direktori dengan nama kelasku, misal
c:/kelasku
 Buatlah 2 program berikut :
 //Berkas : Alif.java
package kelasku;
public class Alif {
public void info() {
System.out.println(“Kelas Alif”);
}
}
 //Berkas : Bata.java
package kelasku;
public class Bata {
public void info() {
System.out.println(“Kelas Bata”);
}
}
Import
 Digunakan untuk mengakses kelas yang terdapat dalam suatu
paket.
 Bentuk pernyataan :
 Import nama_paket.nama_berkas;
 Contoh : import java.util.Date;
 Buat TesPaket.java simpan di direktori C:/
import kelasku.Alif;
import kelasku.Bata;
public class TesPaket {
public static void main(String[] args) {
Alif obj1 = new Alif();
obj1.info();
Bata obj2 = new Bata();
obj2.info();
}
}

More Related Content

Similar to PBO_03_Inheritance.pptx

pbo 3 ervan
pbo 3 ervanpbo 3 ervan
pbo 3 ervanaris
 
Modul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATIONModul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATIONrahmantoyuri
 
Rizki christoper 1211510480 tugas rekweb 5
Rizki christoper 1211510480 tugas rekweb 5Rizki christoper 1211510480 tugas rekweb 5
Rizki christoper 1211510480 tugas rekweb 5Rizki Christoper
 
Laporan PBO pratikum 2
Laporan PBO pratikum 2Laporan PBO pratikum 2
Laporan PBO pratikum 2rahmi wahyuni
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Rakhmat Dedi Gunawan
 
Network programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java LanjutanNetwork programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java LanjutanLia Rusdyana Dewi
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15Ekha Cahya Nugraha
 
Jeni intro1-bab11-pewarisan, polimorfisme, dan interface
Jeni intro1-bab11-pewarisan, polimorfisme, dan interfaceJeni intro1-bab11-pewarisan, polimorfisme, dan interface
Jeni intro1-bab11-pewarisan, polimorfisme, dan interfaceKristanto Wijaya
 
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceJeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceIndividual Consultants
 
Tugas 5 rekayasa web
Tugas 5 rekayasa webTugas 5 rekayasa web
Tugas 5 rekayasa webart david
 
Pbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan intePbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan inteSmkn-2 Pekanbaru
 
2_enkapsulasi.pptx
2_enkapsulasi.pptx2_enkapsulasi.pptx
2_enkapsulasi.pptxArifRizkiM
 
OOP - Inheritance
OOP - InheritanceOOP - Inheritance
OOP - InheritanceKuliahKita
 

Similar to PBO_03_Inheritance.pptx (20)

Modul 6 pbo
Modul 6 pboModul 6 pbo
Modul 6 pbo
 
pbo 3 ervan
pbo 3 ervanpbo 3 ervan
pbo 3 ervan
 
Modul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATIONModul pratikum pbo - ENCAPSULATION
Modul pratikum pbo - ENCAPSULATION
 
P5 depandi enda
P5 depandi endaP5 depandi enda
P5 depandi enda
 
Rizki christoper 1211510480 tugas rekweb 5
Rizki christoper 1211510480 tugas rekweb 5Rizki christoper 1211510480 tugas rekweb 5
Rizki christoper 1211510480 tugas rekweb 5
 
Modul 5 pbo
Modul 5 pboModul 5 pbo
Modul 5 pbo
 
Laporan PBO pratikum 2
Laporan PBO pratikum 2Laporan PBO pratikum 2
Laporan PBO pratikum 2
 
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
Modul PBO Bab-07 - Enkapsulasi (Encapsulation)
 
Network programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java LanjutanNetwork programming 03- Pemrograman Java Lanjutan
Network programming 03- Pemrograman Java Lanjutan
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15Laporan praktikum Algoritma dan Pemrograman pertemuan 15
Laporan praktikum Algoritma dan Pemrograman pertemuan 15
 
Modul Object Oriented Programming
Modul Object Oriented ProgrammingModul Object Oriented Programming
Modul Object Oriented Programming
 
Jeni intro1-bab11-pewarisan, polimorfisme, dan interface
Jeni intro1-bab11-pewarisan, polimorfisme, dan interfaceJeni intro1-bab11-pewarisan, polimorfisme, dan interface
Jeni intro1-bab11-pewarisan, polimorfisme, dan interface
 
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan InterfaceJeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
Jeni Intro1 Bab11 Pewarisan, Polimorfisme, Dan Interface
 
365 4 inheritance
365 4 inheritance365 4 inheritance
365 4 inheritance
 
11. inheritance
11. inheritance11. inheritance
11. inheritance
 
Tugas 5 rekayasa web
Tugas 5 rekayasa webTugas 5 rekayasa web
Tugas 5 rekayasa web
 
Pbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan intePbo inheritance, polymorphism, dan inte
Pbo inheritance, polymorphism, dan inte
 
BAB 3 PBO C++ Pewarisan
BAB 3 PBO C++ PewarisanBAB 3 PBO C++ Pewarisan
BAB 3 PBO C++ Pewarisan
 
2_enkapsulasi.pptx
2_enkapsulasi.pptx2_enkapsulasi.pptx
2_enkapsulasi.pptx
 
OOP - Inheritance
OOP - InheritanceOOP - Inheritance
OOP - Inheritance
 

PBO_03_Inheritance.pptx

  • 2. Inheritance (Pewarisan)  Pewarisan merupakan konsep dalam PBO yang memungkinkan untuk membuat suatu kelas dengan didasarkan pada kelas yang sudah ada, sehingga mewarisi semua metode dan variabelnya.  Tidak perlu menuliskan kode dari nol.  Semua metode dan variabel instan yang terdapat pada kelas dasar diturunkan ke kelas turunan.  Namun, kelas turunan dapat menambahkan metode baru atau variabel instan baru tersendiri.
  • 3. Konsep Inheritance Kelas A (Kelas Dasar) variabelInstanZ metodeX() metodeY() Kelas B (Kelas Turunan) metodeW() Dengan sendirinya KelasB mewarisi semua metode dan variabel instan milik KelasA, yang tidak bersifat private. Metode tambahan
  • 4. Contoh Inheritance Keyword extends digunakan untuk menyatakan bahwa suatu class merupakan turunan dari class lain. Sebuah class tidak boleh memiliki lebih dari satu class induk
  • 5. Penentu Akses Protected  Penentu akses ini berguna untuk mengatur agar suatu variabel instans maupun metode yang terdapat pada sebuah kelas, dapat diakses pada kelas itu sendiri dan pada sub kelas.
  • 6. Akan muncul pesan kesalahan : Undifined variable : a
  • 7. Kata Kunci Super class Orang { private String nama; private int usia; //Konstruktor public Orang(String nama, int usia) { this.nama = nama; this.usia = usia; } //Metode public void info() { System.out.println("Nama : " + this.nama); System.out.println("Usia : " + this.usia); } } class Pegawai extends Orang { protected String noPegawai; //Konstruktor public Pegawai(String noPegawai, String nama, int usia) { super(nama, usia); this.noPegawai = noPegawai; } //Metode public void info() { System.out.println("No. Pegawai : " + this.noPegawai); super.info(); } } public class KonstruktorSuperkelas { public static void main (String[] args) { Pegawai p1 = new Pegawai("101", "Edi", 25); p1.info(); } }
  • 8. Beberapa hal yang harus diingat ketika menggunakan pemanggil konstuktor super:  1. Pemanggil super() HARUS DIJADIKAN PERNYATAAN PERTAMA DALAM constructor.  2. Pemanggil super() hanya dapat digunakan dalam definisi constructor.  3. Termasuk constructor this() dan pemanggil super() TIDAK BOLEH TERJADI DALAM constructor YANG SAMA.
  • 9.  Simpan dengan nama Inheritance1.java class Inheritance1 { private String nim; private String nama; public void setnim (String vnim) { nim=vnim; } public void setnama (String vnama){ nama=vnama; } public String getnim() { return (nim); } public String getnama() { return (nama); } public void display() { System.out.println(“NPM”+getnim( Simpan dengan nama Inheritance2.java class Inheritance2 extends Inheritance1 { private double ip; public void setip (double vip) { ip=vip; } public double getip() { return(ip); } public void display() { System.out.println(“Nama : “+getnama()); System.out.println(“NIM : “+getnim()); System.out.println(“IP : “+getip()); } } Simpan dengan nama InheritanceCoba.java public class InheritanceCoba { public static void main(String[] args) { Inheritance2 ap1=new Inheritance2(); ap1.setnim(“56410268″); ap1.setnama(“Rudy Eriyanto “); ap1.setip(3.5); ap1.display(); } }
  • 10. Contoh lain Profesi Orang MHS Dokter Dosen Pegawai Nama Nama Nama Nama Usia Usia Usia Usia Jurusan Spesialis MK Dinas Nam a Usia
  • 11. Polymorphism  Beberapa objek dalam 1 hierarki bisa jadi memiliki method yang sama, namun implementasinya berbeda-beda.  Contoh : objek geometri dengan method drawing().  Implementasinya di objek kotak berbeda dengan implementasinya di objek lingkaran atau segitiga.  Contoh lain : objek hewan dengan method suara().  Implementasinya di objek, suara kucing berbeda dengan suara harimau, dsb.  Kondisi dimana sebuah perintah direspon
  • 12. Contoh Polymorphism class Hewan{ public void suara() {} } class Kucing { public void suara() { System.out.println(“Kucing mengeong…”); } } class Harimau { public void suara() { System.out.println(“Harimau Mengaung…”); } } public class TestPolymorphism { public static void main (String[] args) { cetak(new Hewan()); cetak (new Kucing()); cetak(new Harimau()); } static void cetak(Hewan x) { x.suara(); } }
  • 13. Package (Paket)  Package adalah istilah untuk menyatakan folder dimana terdapat sekumpulan class dengan fungsional sejenis.  Contoh package bawaan java :  Java.awt  Javax.swing  Java.sql  Java.applet  Meski demikian, user diperbolehkan membuat pakage sendiri.  Isi sebuah package adalah sekumpulan file .class yang siap pakai.
  • 14. Deklarasi Package  Buatlah direktori dengan nama kelasku, misal c:/kelasku  Buatlah 2 program berikut :  //Berkas : Alif.java package kelasku; public class Alif { public void info() { System.out.println(“Kelas Alif”); } }  //Berkas : Bata.java package kelasku; public class Bata { public void info() { System.out.println(“Kelas Bata”); } }
  • 15. Import  Digunakan untuk mengakses kelas yang terdapat dalam suatu paket.  Bentuk pernyataan :  Import nama_paket.nama_berkas;  Contoh : import java.util.Date;  Buat TesPaket.java simpan di direktori C:/ import kelasku.Alif; import kelasku.Bata; public class TesPaket { public static void main(String[] args) { Alif obj1 = new Alif(); obj1.info(); Bata obj2 = new Bata(); obj2.info(); } }