- POLIMORFISME
Berikut ini adalah contoh program java yang menggunakan polimorfisme :
Kemampuan dari referensi untuk mengubah sifat menurut object apa yang dijadikan acuan dinamakan polimorfisme. Polimorfisme menyediakan multiobject dari subclasses yang berbeda untuk diperlakukan sebagai object dari superclass tunggal, secara otomatis menunjuk method yang tepat untuk menggunakannya ke particular object berdasar subclass yang termasuk di dalamnya.
Contoh lain yang menunjukkan properti polimorfisme adalah ketika kita mencoba melalui referensi ke method.
contoh program :
class kendaraan {
public void bahanbakar (){
System.out.println("kendaraan berbahanbakar :");
}
}
// Membuat kelas turunan mobil yang merupakan turunan dari class kendaraan :
class mobil extends kendaraan {
public void bahanbakar(){
System.out.println(" MOBIL bahan bakar bensin");
}
}
//Membuat kelas turunan kereta api yang merupakan turunan dari class kendaraan :
class keretaapi extends kendaraan {
public void bahanbakar (){
System.out.println("KERETA API bahan bakar batu bara");
}
}
//Membuat kelas turunan pesawat yang merupakan turunan dari class kendaraan :
class pesawat extends kendaraan {
public void bahanbakar(){
System.out.println("PESAWAT berbahan bakar Bensol");
}
}
// Membuat class bahanbakarkendaraan untuk mengetes class-class yang telah dibuat :
public class bahanbakarkendaraan {
public static void main(String[] args){
kendaraan kendaraan = new kendaraan();
mobil MOBIL = new mobil();
keretaapi KERETAAPI = new keretaapi();
pesawat PESAWAT = new pesawat();
kendaraan.bahanbakar();
kendaraan = MOBIL;
kendaraan.bahanbakar();
kendaraan = KERETAAPI;
kendaraan.bahanbakar();
kendaraan = PESAWAT;
kendaraan.bahanbakar();
}
}
output :
2. INHERITANCE
Inheritance adalah salah satu teknik pemrograman berorientasi object yang digunakan agar suatu codingan dapat digunakan kembali oleh programmer lain / reuseable. Hal tersebut dilakukan dengan cara membuat turunan dari suatu class yang sudah ada, yaitu dengan membuat child class. Contohnya adalah jika ada programmer yang membuat suatu class yaitu shape yang memiliki atribut atribut luas, dan position kita tidak perlu membuat class baru ketika kita ingin membuat suatu class rectangle yang notabennya juga termasuk shape, jadi kita cuma perlu untuk menurunkan class shape tadi ke class rectangle yang akan kita buat. Dari gambar diatas dapat kita ketahui hierarki dari penurunan class shape menjadi class class lainya yang notabennya masih termasuk dalam class shape. Selain itu dalam iheritance ini kita juga mulai mengenal yang dinamakan access modifier, yaitu keyword untuk merubah atribut dari suatu field dalam suatu class, dimana dalam java access modifier tersebut ada 4, yaitu: (none) -> Akses ke field tersebut hanya terbatas pada suatu package Public -> Field tersebut dapat diakses dari semua tempat, asal masih dalam satu scope Private -> Akses ke field tersebut hanya terbatas pada class dimana field tersebut ada Protected -> Akses ke filed tersebut hanya terbatas pada class dimana field tersebut ada, beserta class turunan dari class field tersebut. Untuk contoh program dapat dilihat dibawah ini, yang merupakan inheritance class person menjadi class student.
contoh program :
//class Person.java
public class Person {
protected String name;
protected int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return this.name;
}
public int getAge() {
return this.age;
}
}
//class Student.java
public class Student extends Person {
private String schoolName;
public Student(String name, int age, String schoolName) {
super(name, age);
this.schoolName = schoolName;
}
public String getSchoolName() {
return this.schoolName;
}
}
//class Main.java
public class Main {
public static void main(String[] args) {
Person person = new Person("Yohanda", 19);
Student student = new Student("Mandala", 18, "SMAN 2");
System.out.println("Informasi tentang object person : ");
System.out.println("Name : " + person.getName());
System.out.println("Age : " + person.getAge());
System.out.println();
System.out.println("Informasi tentang object student : ");
System.out.println("Name : " + student.getName());
System.out.println("Age : " + student.getAge());
System.out.println("School Name : " + student.getSchoolName());
}
}
output :
Sumber : J.E.N.I pdf , yohandamandala.blogspot.com/,Buku : Semua Bisa Menjadi Programmer JAVA (Yuniar Spardi)
teman kelompok : http://granuuviq.blogspot.com/