SlideShare a Scribd company logo
1 of 25
PemrogramanBerorientasiObjek Inheritance (Pewarisan)
Pengertian Inheritance  Prosespewarisan data dan method darisuatukelaskepadakelas yang lain Class ygmewariskanSuperclass Class ygdiwariskan  	    Subclass
Keyword Extends bentukumumpada Java : 	<hakakses> class <subclass> extends <superclass> Contoh : 	public class mobilextendsKendaraanBermotor bentukumumpada C++ : 	class <subclass> : <hakakses> <superclass> contoh : 	class mobil : public kendaraan_bermotor
Keyword Super untukmemanggilkonstruktordan method oleh subclass yang dimilikiolehsuperclass ,[object Object],super () super(parameter) ,[object Object],super.method(parameter)
Jenis-Jenis Inheritance  Single Inheritance	(Pewarisan Tunggal) Multiple Inheritance (PewarisanJamak) Virtual Multiple Inheritance (PewarisanJamak Maya)
Single Inheritance (Pewarisan Tunggal) Adalahpewarisan yang jumlahkelasdasarnya (basic class / superclass) tunggal, tapikelasturunan (subclass) bisalebihdarisatu Konsep inheritance yang ada di Java hanya memperkenankan adanya single inheritance.
Single Inheritance (Pewarisan Tunggal)
Syntax Single Inheritance C++ JAVA class A {   . . . }; class B : public A {   . . . } class A {   . . . }; Public class B extends A {   . . . }
Contoh Single Inheritance ( Java ) public class Komputer {     String Processor; int Monitor; intHardDisk; int Memory;     public intgetHardDisk() {         return HardDisk;     }     public void setHardDisk(intHardDisk) { this.HardDisk = HardDisk;     }     public intgetMemory() {         return Memory;     }  public void setMemory(int Memory) { this.Memory = Memory;     }     public intgetMonitor() {         return Monitor;     }     public void setMonitor(int Monitor) { this.Monitor = Monitor;     }     public String getProcessor() {         return Processor;     }     public void setProcessor(String Processor) { this.Processor = Processor;     } }
Contoh Single Inheritance ( Java ) public class Laptop extends Komputer{        String typeBattery; intdurasiBattery;     public intgetDurasiBattery() {         return durasiBattery;     }     public void setDurasiBattery(intdurasiBattery) { this.durasiBattery = durasiBattery;     }     public String getTypeBattery() {         return typeBattery;     }     public void setTypeBattery(String typeBattery) { this.typeBattery = typeBattery;     } }
Contoh Single Inheritance ( Java ) public class Circle {    private double radius;    Circle(double r) {    //Constructor         radius = r;    }    Circle() {            //Constructor         radius = 1.0;    }    public double getRadius() {         return radius;    }    public double findArea() {         return radius*radius*3.14;   }  }
Contoh Single Inheritance ( Java ) public class Cylinder extends Circle {    private double length;    public Cylinder() {                   //Constructor  super();         length = 1.0;    }    public Cylinder(double r,double l) {  //Constructor  super(r);        length = l;        }    public double getLength() {         return length;   }    public double findArea() {  System.out.println(“Call Cylinder find Area”);         return 2*super.findArea()+2*getRadius()*3.14159*length;  }   public double findVolume() {         return findArea() * length;    }    }
Contoh Single Inheritance ( Java ) public class Test {     public static void main(String [] Args) {         //Create Cylinder object and display it's properties         Cylinder myCylinder = new Cylinder(5.0,2.0);  System.out.println("The length : "+myCylinder.getLength());  System.out.println("The radius : "+myCylinder.getRadius());  System.out.println("The Cylinder Volume : "+myCylinder.findVolume());  System.out.println("The area of Circle : "+myCylinder.findArea());     }   }
Multiple Inheritance (PewarisanJamak) Kelas yang diturunkanlebihdarisatukelas yang berbeda (jumlahkelasdasarnyalebihdarisatu) Java tidakmendukung Multiple Inheritance C++ mendukungMultiple Inheritance Java menggunakan interface untukmenggantikan konsep multiple inheritance    	Multiple Interface Inheritance
Multiple Inheritance (PewarisanJamak)
Syntax Multiple Inheritance class A {   . . . }; class B {   . . . } class C: public A, public B {   . . . }
Contoh Multiple Inheritance (C++)  class ayah{       public:              void rambut(){ cout<<">RambutnyaKeriting"<<endl;                   }              }; class ibu{       public:              void kulit(){ cout<<">KulitnyaPutih"<<endl;                   }       };
Contoh Multiple Inheritance (C++)  class anak : public ayah, public ibu{       public:              void hidung(){ cout<<">Hidunganakitumancung"<<endl<<endl;                   }        }; class cucu : public ayah, public ibu{       public:              void pandai(){ cout<<">CucudariKakekdanNenekitupandaiberhitung"<<endl<<endl;                   }              };
Virtual Multiple Inheritance Kelas yang diturunkanlebihdarisatukelas yang berbeda (jumlahkelasdasarnyalebihdarisatu) Hanyasaja, beberapadiantarakelasdasartersebutmerupakankelasturunandarikelasdasar yang sama
Virtual Multiple Inheritance
Syntax VirtualMultiple Inheritance class A {   . . . }; class B: virtual public A {   . . . }; class C: virtual public A {   . . . }; class D: public B, public C {   . . . };
Contoh Virtual Multiple Inheritance class hewan { public: void bergerak() { cout<<" # Bergerakberpindahtempat"<<endl; } }; class kuda: virtual public hewan { public : void berlari() { cout<<" # Berlarinyasangatcepat"<<endl; } }; class burung: virtual public hewan { public: void terbang() { cout<<" # Terbangmenembusawan"<<endl; } }; class pegasus: public kuda, public burung { public: void lariterbang() { cout<<"# Bersayap, laridandapatterbangkeangkasa"<<endl; } };
Hal ygperludipertimbangkansaatmewariskan method : Jika method disuperclass PUBLIC makasemua subclass bersifat PUBLIC Jika method disuperclass PROTECTED makabisamenjadi PROTECTED atau PUBLIC untuksemua subclass Jika method disuperclass DEFAULT makapada subclass bisamenjadi PRIVATE Jika method disuperclass PRIVATE, makatidakbisadiwariskan HubunganantaraAksesdan Inheritance
HakAkses Subclass danSuperclass
Selesai UniversitasKomputer Indonesia

More Related Content

What's hot

What's hot (20)

Fungsi Rekursif
Fungsi RekursifFungsi Rekursif
Fungsi Rekursif
 
GRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORKGRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORK
 
10. deadlock
10. deadlock10. deadlock
10. deadlock
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
 
Resume praktikum 6 stack
Resume praktikum 6 stackResume praktikum 6 stack
Resume praktikum 6 stack
 
Aturan Inferensi dan Metode Pembuktian
Aturan Inferensi dan Metode PembuktianAturan Inferensi dan Metode Pembuktian
Aturan Inferensi dan Metode Pembuktian
 
Kisi kisi uas struktur data
Kisi kisi uas struktur dataKisi kisi uas struktur data
Kisi kisi uas struktur data
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi boolean
 
2. galat
2. galat2. galat
2. galat
 
Bab 3 resolusi logika ta 2019
Bab 3 resolusi logika ta 2019Bab 3 resolusi logika ta 2019
Bab 3 resolusi logika ta 2019
 
Deadlock materi kuliah
Deadlock materi kuliahDeadlock materi kuliah
Deadlock materi kuliah
 
GoLang_1
GoLang_1GoLang_1
GoLang_1
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
 
8 logika predikat
8  logika predikat8  logika predikat
8 logika predikat
 
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
[PBO] Pertemuan 3 - Pengenalan Pemrograman Berbasis Objek
 
Pertemuan 4 revisijan2013-mhs
Pertemuan 4 revisijan2013-mhsPertemuan 4 revisijan2013-mhs
Pertemuan 4 revisijan2013-mhs
 
Proses Data Mining
Proses Data MiningProses Data Mining
Proses Data Mining
 
Soal irisan kerucut dan pembahasannya
Soal irisan kerucut dan pembahasannyaSoal irisan kerucut dan pembahasannya
Soal irisan kerucut dan pembahasannya
 
Materi 3 Finite State Automata
Materi 3   Finite State AutomataMateri 3   Finite State Automata
Materi 3 Finite State Automata
 
02.logika
02.logika02.logika
02.logika
 

Recently uploaded

Castellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdfCastellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdfErnest Lluch
 
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdfمحاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdfKhaled Elbattawy
 
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptxRESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptxscbastidasv
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning ProjectNuckles
 
Català Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALSCatalà Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALSErnest Lluch
 
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...Eesti Loodusturism
 
Català parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdfCatalà parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdfErnest Lluch
 

Recently uploaded (8)

Díptic IFE (2) ifeifeifeife ife ife.pdf
Díptic IFE (2)  ifeifeifeife ife ife.pdfDíptic IFE (2)  ifeifeifeife ife ife.pdf
Díptic IFE (2) ifeifeifeife ife ife.pdf
 
Castellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdfCastellà parelles 2n - Abril i Irina.pdf
Castellà parelles 2n - Abril i Irina.pdf
 
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdfمحاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
محاضرات الاحصاء التطبيقي لطلاب علوم الرياضة.pdf
 
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptxRESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
RESOLUCION DEL SIMULACRO UNMSM 2023 ii 2.pptx
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Català Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALSCatalà Individual 3r - Víctor.pdf JOCS FLORALS
Català Individual 3r - Víctor.pdf JOCS FLORALS
 
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
Saunanaine_Helen Moppel_JUHENDATUD SAUNATEENUSE JA LOODUSMATKA SÜNERGIA_strat...
 
Català parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdfCatalà parelles 3r - Emma i Ariadna (1).pdf
Català parelles 3r - Emma i Ariadna (1).pdf
 

Inheritance

  • 2. Pengertian Inheritance Prosespewarisan data dan method darisuatukelaskepadakelas yang lain Class ygmewariskanSuperclass Class ygdiwariskan Subclass
  • 3. Keyword Extends bentukumumpada Java : <hakakses> class <subclass> extends <superclass> Contoh : public class mobilextendsKendaraanBermotor bentukumumpada C++ : class <subclass> : <hakakses> <superclass> contoh : class mobil : public kendaraan_bermotor
  • 4.
  • 5. Jenis-Jenis Inheritance Single Inheritance (Pewarisan Tunggal) Multiple Inheritance (PewarisanJamak) Virtual Multiple Inheritance (PewarisanJamak Maya)
  • 6. Single Inheritance (Pewarisan Tunggal) Adalahpewarisan yang jumlahkelasdasarnya (basic class / superclass) tunggal, tapikelasturunan (subclass) bisalebihdarisatu Konsep inheritance yang ada di Java hanya memperkenankan adanya single inheritance.
  • 8. Syntax Single Inheritance C++ JAVA class A { . . . }; class B : public A { . . . } class A { . . . }; Public class B extends A { . . . }
  • 9. Contoh Single Inheritance ( Java ) public class Komputer { String Processor; int Monitor; intHardDisk; int Memory; public intgetHardDisk() { return HardDisk; } public void setHardDisk(intHardDisk) { this.HardDisk = HardDisk; } public intgetMemory() { return Memory; } public void setMemory(int Memory) { this.Memory = Memory; } public intgetMonitor() { return Monitor; } public void setMonitor(int Monitor) { this.Monitor = Monitor; } public String getProcessor() { return Processor; } public void setProcessor(String Processor) { this.Processor = Processor; } }
  • 10. Contoh Single Inheritance ( Java ) public class Laptop extends Komputer{ String typeBattery; intdurasiBattery; public intgetDurasiBattery() { return durasiBattery; } public void setDurasiBattery(intdurasiBattery) { this.durasiBattery = durasiBattery; } public String getTypeBattery() { return typeBattery; } public void setTypeBattery(String typeBattery) { this.typeBattery = typeBattery; } }
  • 11. Contoh Single Inheritance ( Java ) public class Circle { private double radius; Circle(double r) { //Constructor radius = r; } Circle() { //Constructor radius = 1.0; } public double getRadius() { return radius; } public double findArea() { return radius*radius*3.14; } }
  • 12. Contoh Single Inheritance ( Java ) public class Cylinder extends Circle { private double length; public Cylinder() { //Constructor super(); length = 1.0; } public Cylinder(double r,double l) { //Constructor super(r); length = l; } public double getLength() { return length; } public double findArea() { System.out.println(“Call Cylinder find Area”); return 2*super.findArea()+2*getRadius()*3.14159*length; } public double findVolume() { return findArea() * length; } }
  • 13. Contoh Single Inheritance ( Java ) public class Test { public static void main(String [] Args) { //Create Cylinder object and display it's properties Cylinder myCylinder = new Cylinder(5.0,2.0); System.out.println("The length : "+myCylinder.getLength()); System.out.println("The radius : "+myCylinder.getRadius()); System.out.println("The Cylinder Volume : "+myCylinder.findVolume()); System.out.println("The area of Circle : "+myCylinder.findArea()); } }
  • 14. Multiple Inheritance (PewarisanJamak) Kelas yang diturunkanlebihdarisatukelas yang berbeda (jumlahkelasdasarnyalebihdarisatu) Java tidakmendukung Multiple Inheritance C++ mendukungMultiple Inheritance Java menggunakan interface untukmenggantikan konsep multiple inheritance Multiple Interface Inheritance
  • 16. Syntax Multiple Inheritance class A { . . . }; class B { . . . } class C: public A, public B { . . . }
  • 17. Contoh Multiple Inheritance (C++) class ayah{ public: void rambut(){ cout<<">RambutnyaKeriting"<<endl; } }; class ibu{ public: void kulit(){ cout<<">KulitnyaPutih"<<endl; } };
  • 18. Contoh Multiple Inheritance (C++) class anak : public ayah, public ibu{ public: void hidung(){ cout<<">Hidunganakitumancung"<<endl<<endl; } }; class cucu : public ayah, public ibu{ public: void pandai(){ cout<<">CucudariKakekdanNenekitupandaiberhitung"<<endl<<endl; } };
  • 19. Virtual Multiple Inheritance Kelas yang diturunkanlebihdarisatukelas yang berbeda (jumlahkelasdasarnyalebihdarisatu) Hanyasaja, beberapadiantarakelasdasartersebutmerupakankelasturunandarikelasdasar yang sama
  • 21. Syntax VirtualMultiple Inheritance class A { . . . }; class B: virtual public A { . . . }; class C: virtual public A { . . . }; class D: public B, public C { . . . };
  • 22. Contoh Virtual Multiple Inheritance class hewan { public: void bergerak() { cout<<" # Bergerakberpindahtempat"<<endl; } }; class kuda: virtual public hewan { public : void berlari() { cout<<" # Berlarinyasangatcepat"<<endl; } }; class burung: virtual public hewan { public: void terbang() { cout<<" # Terbangmenembusawan"<<endl; } }; class pegasus: public kuda, public burung { public: void lariterbang() { cout<<"# Bersayap, laridandapatterbangkeangkasa"<<endl; } };
  • 23. Hal ygperludipertimbangkansaatmewariskan method : Jika method disuperclass PUBLIC makasemua subclass bersifat PUBLIC Jika method disuperclass PROTECTED makabisamenjadi PROTECTED atau PUBLIC untuksemua subclass Jika method disuperclass DEFAULT makapada subclass bisamenjadi PRIVATE Jika method disuperclass PRIVATE, makatidakbisadiwariskan HubunganantaraAksesdan Inheritance

Editor's Notes

  1. s
  2. s
  3. s
  4. s
  5. s