PBO - 5

TUGAS PEMROGRAMAN BERORIENTASI OBJEK KE - 5

SELASA, 19 NOVEMBER 2019

DOSEN PEMBIMBING : ARY BIMA KURNIAWAN, ST., MT.






Putri Amalia
17117223 - 3KA20
Sistem Informasi
Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Gunadarma


========================================================


Konsep Dasar OOP dengan Bahasa Java
Pertemuan - 3



Inheritance in Java Programming 

Proses dimana satu kelas memperoleh properti (anggota data) dan fungsionalitas (metode) kelas lain disebut pewarisan. Tujuan dari pewarisan adalah untuk menyediakan penggunaan kembali kode sehingga suatu kelas harus menulis hanya fitur unik dan sisa dari sifat umum dan fungsionalitas dapat diperluas dari kelas lain.

Child Class :
Kelas yang memperluas fitur dari kelas lain dikenal sebagai kelas anak, sub kelas atau kelas turunan.

Parent Class :
Kelas yang sifat dan fungsinya digunakan (diwariskan) oleh kelas lain dikenal sebagai kelas induk, kelas super atau kelas Base.


Inheritance
Inheritance atau pewarisan dalam pemrograman berorientasi objek  adalah suatu teknik dimana suatu class dapat mewarisi  attribut maupun method-method yang dimilikinya pada class lain (disebut subclass).

Pewarisan adalah sifat dalam pemrograman berorientasi objek yang memungkinkan programmer untuk membuat kelas baru yang lebih spesifik ataupun di perluas dari kelas yang telah ada tanpa harus membuat ulang attribut maupun method yang sudah dideklarasikan pada class sebelumnya. (kecuali menggunakan modifier private).

Untuk menggunakan Inheritance / pewarisan, menggunakan kata kunci yaitu “extend”.

Suatu Subclass juga dapat memanggil constructor yang terdapat di superclass menggunakan kata kunci “super”. Kata kunci super juga dapat digunakan untuk merujuk pada anggota dari superclass, hal ini sama dengan penggunaan  referensi “this”.
Contoh :

Suatu Subclass juga dapat memanggil constructor yang terdapat di superclass menggunakan kata kunci “super”. Kata kunci super juga dapat digunakan untuk merujuk pada anggota dari superclass, hal ini sama dengan penggunaan  referensi “this”.

Inheritance adalah proses mendefinisikan kelas baru berdasarkan kelas yang ada dengan memperluas anggota data umum dan metode.
Inheritance memungkinkan kita untuk menggunakan kembali kode, itu meningkatkan penggunaan kembali dalam aplikasi java Anda.

Catatan: Keuntungan terbesar dari Inheritance adalah bahwa kode yang sudah ada di kelas dasar tidak perlu ditulis ulang di Child Class.

Ini berarti bahwa anggota data (variabel instan) dan metode kelas induk dapat digunakan sebagai Child Class.

Syntax: Inheritance in Java

CLASS DIAGRAM :

//CLASS BINATANG
public abstract class Binatang{
 protected String nama;
 protected int jmlKaki;
  public Binatang(String nama, int jmlKaki){
  this.nama=nama;
  this.jmlKaki=jmlKaki;
 }
  public void setNama(String nama){
  this.nama=nama;
 }
 public String getNama(){
  return nama;
 }
 public void setKaki(int jmlKaki){
  this.jmlKaki=jmlKaki;
 }
 public int getKaki(){
  return jmlKaki;
 }
 public void displayBinatang(){
  System.out.println("Nama: "+getNama());
  System.out.println("Jumlah Kaki: "+getKaki());
 }
 }

//CLASS KARNIVORA
public interface Karnifora{
 public String jenisK="Karnifora";
 public String makananK="Daging";
  public void displayMakan();
}

//CLASS HERBIFORA
public interface Herbifora{
 public String jenisH="Herbifora";
 public String makananH="Tumbuhan";
  public void displayMakan();
}

//CLASS BERUANG
public class Beruang extends Binatang implements Karnifora, Herbifora{
 private String suara;
 private String warnaBulu;
  public Beruang (String nama, int jmlKaki, String suara, String warnaBulu){
  super(nama, jmlKaki);
  this.suara=suara;
  this.warnaBulu=warnaBulu;
 }
   public void displayMakan(){
  System.out.println("Jenis: "+jenisK + " + " + jenisH);
  System.out.println("Makanan: "+makananK+ " + " + makananH );
 }
 public void displayBinatang(){
  System.out.println("Nama: "+getNama());
  System.out.println("Jumlah Kaki: "+getKaki());
 }
 public void displayData(){
  displayMakan();
  displayBinatang();
  System.out.println("Suara: "+suara);
  System.out.println("Warna Bulu: "+warnaBulu);
 }
}

//CLASS KUCING
public class Kucing extends Binatang implements Karnifora{
 private String suara;
 private String warnaBulu;
  public Kucing (String nama, int jmlKaki, String suara, String warnaBulu){
  super(nama, jmlKaki);
  this.suara=suara;
  this.warnaBulu=warnaBulu;
 }
  public void displayMakan(){
  System.out.println("Jenis: "+jenisK);
  System.out.println("Makanan: "+makananK);
 }
 public void displayBinatang(){
  System.out.println("Nama: "+getNama());
  System.out.println("Jumlah Kaki: "+getKaki());
 }
 public void displayData(){
  displayMakan();
  displayBinatang();
  System.out.println("Suara: "+suara);
  System.out.println("Warna Bulu: "+warnaBulu);
 }
}

//CLASS GAJAH
public class Gajah extends Binatang implements Herbifora{
 private String suara;
 private String warnaBulu;
  public Gajah (String nama, int jmlKaki, String suara, String warnaBulu){
  super(nama, jmlKaki);
  this.suara=suara;
  this.warnaBulu=warnaBulu;
 }
  public void displayMakan(){
  System.out.println("Jenis: "+jenisH);
  System.out.println("Makanan: "+makananH);
 }
 public void displayBinatang(){
  System.out.println("Nama: "+getNama());
  System.out.println("Jumlah Kaki: "+getKaki());
 }
 public void displayData(){
  displayMakan();
  displayBinatang();
  System.out.println("Suara: "+suara);
  System.out.println("Warna Bulu: "+warnaBulu);
 }
}

//CLASS DRIVER (MAIN)
public class Driver {
 public static void main (String[] args){
  Kucing k = new Kucing("Toni",4,"Meong meong", "Coklat");
  k.displayData();
  System.out.println();
    Gajah g = new Gajah("Jajah",4,"Toreet toreet", "Abu-abu");
  g.displayData();
  System.out.println();
    Beruang b = new Beruang("Bluang",4,"Groooa groooa", "Coklat");
  b.displayData();
  System.out.println();
  
 }
}


OUTPUT :


Demikianlah yang dapat saya sampaikan mengenai materi yang menjadi bahasan ini, tentunya banyak kekurangan dan kelemahan kerena terbatasnya pengetahuan kurangnya rujukan atau referensi yang kami peroleh hubungannya dengan ini. Penulis banyak berharap kepada para pembaca yang budiman memberikan kritik saran yang membangun. Semoga tulisan ini dapat bermanfaat bagi para pembaca khususnya pada penulis.



Referensi

https://beginnersbook.com/2013/03/inheritance-in-java/ https://www.w3schools.com/java/ref_keyword_extends.asp 
https://www.w3schools.com/java/java_inheritance.asp 
https://www.tutorialspoint.com/java/java_inheritance.htm 
http://devmatics.blogspot.com/2018/07/contoh-program-java-abstract-interface.html
https://stackoverflow.com/questions/4188091/java-extends-example
Modul Inheritance (Mr. Juliana Mansur)

Comments

  1. Gambling in Connecticut: Legal casino gambling in NJ
    Casinos 강원도 출장샵 can now legally legally operate in the 통영 출장샵 state of New 충청북도 출장샵 Jersey, allowing them 포항 출장샵 to operate 영주 출장샵 in a manner that is fair, regulated,

    ReplyDelete

Post a Comment

Popular posts from this blog

Inovasi SI 4.2

Peng. Animasi & Desain Grafis 3.1

ILMU SOSIAL DASAR - 11