Anda di halaman 1dari 14

BAHASA PEMROGRAMAN BERORIENTASI OBJEK

Abdul Rahim, S.kom

TUJUAN

Mengenal pewarisan / inheritance dalam pemrograman


berorientasi objek

Keyword super

Overloading method dan konstruktor

Mengenal package

Menggunakan pewarisan dan package di java.

PEWARISAN atau 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)

SUPER-CLASS
Super class : persegi_panjang.java

public class persegi_panjang {


protected double panjang,lebar;
public void set_nilai(double p, double l){
this.panjang = p;
this.lebar = l;
}
public double get_luas(){
return this.panjang*this.lebar;
}
public double get_keliling(){
return 2*(this.panjang+this.lebar);
}
}

Kata Kunci extends


Untuk menggunakan pewarisan di java menggunakan kata
kunci extends.

class anak extends orangtua{


}

SUB-CLASS
Sub-class : balok.java

public class balok extends persegi_panjang{


private double tinggi;
public void set_tinggi(double p, double l, double t){
this.tinggi= t;
super.lebar = l;
super.panjang = p;
}
public String get_volume(){
double total = 0;
total = super.get_luas() * this.tinggi;
return "Total :"+total;
}
public static void main(String[] args){
balok bl = new balok();
bl.set_tinggi(10, 2, 3);
System.out.println(bl.get_volume());
}
}

Kata Kunci Super


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 pada konstruktor :


super(param1,param2);
Contoh memanggil anggota superclass :
super.p = 10;

SUPER-CLASS
package pewarisan;
Super class :
Persegi_panjang.java

public class persegi_panjang {


double panjang,lebar;
persegi_panjang(double p, double l){
this.panjang = p;
this.lebar = l;
}
double get_luas(){
return this.panjang*this.lebar;
}
}

SUB-CLASS
Sub-class : balok.java

package pewarisan;
public class balok extends persegi_panjang{
double t;
public balok(double p, double l, double t){
super(p, l);
this.tinggi = t;
}
String get_volume(){
double total = 0;
total = this.get_luas() * this.t;
return "Total :"+total;
}
}

MAIN-CLASS
Main Class : mainPewarisan.java
package belajaroop;
public class mainPewarisan {
public static void main(String[] args){
balok hitung = new balok(10, 2, 3);
System.out.println("Luas : "+hitung.getLuas());
System.out.println("Keliling : "+hitung.getKeliling());
System.out.println("Volume :"+hitung.getVolume());
}
}

OVERLOADING METHOD
Overloading method adalah suatu teknik dimana didalam suatu class terdapat method
dengan nama yang sama namun prilaku yang berbeda.
Aturan penulisannya :
1. Nama Method harus sama
2. Parameter harus berbeda
3. Tipe Kembalian boleh sama ataupun berbeda

double hitung(double n1, double n2){


//body method
}
double hitung(int n1, int n2){
//body method
}

CONTOH OVERLOADING METHOD

Terdapat 2 method dengan nama yang sama yaitu method hitung.


Pada method hitung pertama untuk menghitung nilai dengan tipe double
Pada method hitung kedua berfungsi untuk menghitung nilai dengan tipe int

CONTOH OVERLOADING METHOD

Contoh penggunaan overloading method

OVERLOADING PADA KONSTRUKTOR


Overloading method juga dapat diterapkan pada method konstruktor dengan
ketentuan yang sama, yaitu nama method harus sama dan parameter harus berbeda

Anda mungkin juga menyukai