SUPERCLASS.Java
public class SuperClass { ---------------→ (Nama dari kelasnya adalah Super Class)
public SuperClass () { ---------------→(SuperClass dalam hal ini dinamakan konstruktor
karena nama method nya sama dengan nama kelas)
System.out.println("Ini konstruktor milik SuperClass");
}
public void methodsuperClass() {
System.out.println("Ini method milik SuperClass");
}
}
Hasil dari program diatas tanpa mempunyai nilai karena tidak mempunyai fungsi utama (void Main).
SUbCLASS.Java
public class SubClass extends SuperClass { ---------------→ (Kelas SubClass yang diturunkan dari
kelas SuperClass, yang ditandai dgn
adanya kata extend)
public SubClass() { ---------------→SubClass sebagi konstruktor
super() ; ---------------→(Memanggil konstruktor kelas
induk
induk
}
public void methodSubClass() {
super.methodsuperClass() ;
}
}
DEMOINHERITANCE.Java
public class DemoInheritance { ---------------→DemoInheritance sbgai nama kelas
public static void main (String[] args){ ---------------→static void main sbgai fungsi utama
SubClass sc =new SubClass () ; ---------------→Membuat objek baru di SubClass
dengan nama objek cs
sc.methodSubClass() ; ---------------→Memanggil method SubClass dr
objek sc
objek sc
}
}
Hasil dari kode di atas adalah seperti tampilan di bawah ini yang mempunyai nilai karena menggunakan fungsi utama void main.
PERSEGI.Java
public class Persegi {
private double panjang; //atribut yang di sembunyikan
private double lebar; //atribut yang di sembunyikan
private double tinggi; //atribut yang di sembunyikan
public Persegi () {
panjang = 0;
lebar = 0;
}
private double luas(double p, double l) {
return p*l;
}
public void setpanjang(double panjang1) { ---------------→Memberikan nilai panjang dgn tipe data
double dan parameter panjang1.
this.panjang = panjang1; ---------------→panjang1 sbgai parameter
}
public void setlebar(double lebar1) {
this.lebar = lebar1;
}
public double getpanjang() { ---------------→Mengambil nilai panjang
return panjang; ---------------→isi dr getpanjang adalah return panjang
}
public double getlebar() {
return lebar;
}
public double getLuas() { ---------------→Mengambil nilai luas
return luas(panjang, lebar); ---------------→isi dari get luas yg diperoleh dari nilai
panjang dan lebar
}
}
Hasil tidak mempunyai nilai karena tidak ada fungsi utama void main.
MAIN PERSEGI.Java
public class MainPersegi { ---------------→Nama kelas induk Persegi
public static void main (String[]args) {
Persegi pg = new Persegi(); ---------------→Memanggil konstruktor persegi
pg.setpanjang(10); ---------------→Memanggil set panjang dgn nilai
parameter 10
pg.setlebar(20);
System.out.println("panjang:"+pg.getpanjang());
System.out.println("lebar:"+pg.getlebar());
System.out.println("Luas:"+pg.getLuas());
}
}
KARYAWAN.Java
abstract class Karyawan { ---------------→Method yang tidak ada dikerjakan
int gaji; ---------------→Gaji sbgai atribut dgn tipe data integer
Karyawan() { ---------------→Karyawan sbgai method yg ditandai dgn tanda kurung
gaji = 1000000;
}
int getGaji() { ---------------→Mengambil nilai Gaji
return gaji; ---------------→isi perintah dr getGaji
}
abstract void naikGaji();
}
Manager.Java
class Manager extends Karyawan { ---------------→Mendeklarasikan kelas manager yg diturunkan
dari kelas Karyawan
Manager () {
gaji += 2000000;
}
void naikGaji() { gaji+=3000000;}
}
RECEPTIONIST.Java
class Receptionist extends Karyawan { ---------------→Mendeklarasikan kelas Receptionist yg dirunkan
dr kelas Karyawan
Receptionist() {
gaji += 1000000;
}
void naikGaji() { gaji+=1000000;}
}
Polymorphisme.Java
class Polymorphisme {
public static void main(String[]args) {
Karyawan K[]= new Karyawan[3];
K[0] = new Manager();
K[1] = new Receptionist();
K[2] = new Manager();
for (int i=0;i<3;i++)
System.out.println("Gaji Karyawan "+i+" adalah "+K[i].getGaji());
for (int i=0;i<3;i++)
System.out.println("Gaji sekarang "+i+" adalah "+K[i].getGaji());
}
}
Dari sedikit penjelasan dari uraian-uraian kode program di atas, kita bisa lebih memahami yang mana dikatakan method yang di tandai dengan adanya tanda buka kurung dan tutup kurung () setelah nama method. Kita mengetahui kelas-kelas yang mendapat turunan atau pewarisan (Inheritance) atribut dan method dari suatu kelas induk yang ditandai dengan kata extends .
NB: Setelah tanda panah adalah penjelasan dari kode.
Selesai…………!!!
Tidak ada komentar:
Posting Komentar