Download PEWARISAN atau INHERITANCE

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
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
Super class :
Persegi_panjang.java
package pewarisan;
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