Interface adalah jenis khusus dari blok yang hanya berisi method signature(atau constant
). Interface mendefinisikan sebuah(signature) dari sebuah kumpulan method tanpa tubuh.
Interface mendefinisikan sebuah cara standar dan umum dalam menetapkan sifat-sifat dari
class-class. Mereka menyediakan class-class, tanpa memperhatikan lokasinya dalam hirarki
class, untuk mengimplementasikan sifat-sifat yang umum. Dengan catatan bahwa
interface-interface juga menunjukkan polimorfisme, dikarenakan program dapat memanggil
method interface dan versi yang tepat dari method yang akan dieksekusi tergantung dari
tipe object yang melewati pemanggil method interface.
Jumat, 09 Desember 2011
Abstract Class (PBO)
Misalnya kita ingin membuat superclass yang mempunyai method tertentu yang berisi
implementasi, dan juga beberapa method yang akan di-overridden oleh subclasses nya.
Sebagai contoh, kita akan membuat superclass bernama LivingThing. class ini mempunyai
method tertentu seperti breath, eat, sleep, dan walk. Akan tetapi, ada beberapa method di
dalam superclass yang sifatnya tidak dapat digeneralisasi. Kita ambil contoh, method walk.
Tidak semua kehidupan berjalan(walk) dalam cara yang sama. Ambil manusia sebagai
misal, kita manusia berjalan dengan dua kaki, dimana kehidupan lainnya seperti anjing
berjalan dengan empat kaki. Akan tetapi, beberapa ciri umum dalam kehidupan sudah
biasa, itulah kenapa kita inginkan membuat superclass umum dalam hal ini.
Kita dapat membuat superclass yang mempunyai beberapa method dengan implementasi
sedangkan yang lain tidak. Class jenis ini yang disebut dengan class abstract.
implementasi, dan juga beberapa method yang akan di-overridden oleh subclasses nya.
Sebagai contoh, kita akan membuat superclass bernama LivingThing. class ini mempunyai
method tertentu seperti breath, eat, sleep, dan walk. Akan tetapi, ada beberapa method di
dalam superclass yang sifatnya tidak dapat digeneralisasi. Kita ambil contoh, method walk.
Tidak semua kehidupan berjalan(walk) dalam cara yang sama. Ambil manusia sebagai
misal, kita manusia berjalan dengan dua kaki, dimana kehidupan lainnya seperti anjing
berjalan dengan empat kaki. Akan tetapi, beberapa ciri umum dalam kehidupan sudah
biasa, itulah kenapa kita inginkan membuat superclass umum dalam hal ini.
Kita dapat membuat superclass yang mempunyai beberapa method dengan implementasi
sedangkan yang lain tidak. Class jenis ini yang disebut dengan class abstract.
Label:
Java
Perubahan Bentuk/ Polymorphysm (PBO)
Sekarang, class induk Person dan subclass Student dari contoh sebelumnya, kita tambahkan subclass lain dari Person yaitu Employee. Dalam Java, kita dapat membuat referensi yang merupakan tipe dari superclass ke sebuah object dari subclass tersebut. Sebagai contohnya,
public static main( String[] args )
{
Person ref;
Student studentObject = new Student();
Employee employeeObject = new Employee();
ref = studentObject; //Person menunjuk kepada
// object Student
//beberapa kode di sini
}
Sekarang dimisalkan kita punya method getName dalam superclass Person kita, dan kita
override method ini dalam kedua subclasses Student dan Employee,
public class Person
{
public String getName(){
System.out.println(“Person Name:” + name);
return name;
}
}
public class Student extends Person
{
public String getName(){
System.out.println(“Student Name:” + name);
return name;
}
}
public static main( String[] args )
{
Person ref;
Student studentObject = new Student();
Employee employeeObject = new Employee();
ref = studentObject; //Person menunjuk kepada
// object Student
//beberapa kode di sini
}
Sekarang dimisalkan kita punya method getName dalam superclass Person kita, dan kita
override method ini dalam kedua subclasses Student dan Employee,
public class Person
{
public String getName(){
System.out.println(“Person Name:” + name);
return name;
}
}
public class Student extends Person
{
public String getName(){
System.out.println(“Student Name:” + name);
return name;
}
}
Label:
Java
Pewarisan (PBO)
Dalam Java, semua class, termasuk class yang membangun Java API, adalah subclasses
dari superclass Object. Contoh hirarki class diperlihatkan di bawah ini.
Beberapa class di atas class utama dalam hirarki class dikenal sebagai superclass.
Sementara beberapa class di bawah class pokok dalam hirarki class dikenal sebagai
subclass dari class tersebut.
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu
sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari
semua subclasses. Jadi, Anda dapat menuliskan kode method hanya sekali dan mereka
dapat digunakan oleh semua subclass. Subclass hanya perlu mengimplementasikan.
dari superclass Object. Contoh hirarki class diperlihatkan di bawah ini.
Beberapa class di atas class utama dalam hirarki class dikenal sebagai superclass.
Sementara beberapa class di bawah class pokok dalam hirarki class dikenal sebagai
subclass dari class tersebut.
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu
sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari
semua subclasses. Jadi, Anda dapat menuliskan kode method hanya sekali dan mereka
dapat digunakan oleh semua subclass. Subclass hanya perlu mengimplementasikan.
Label:
Java
PBO Awam
- Pewarisan/ Inheritance
Pewarisan adalah proses penurunan method dan variable pada superclass kesubclass dengan keyword “extends”.
- Polymorphism
Adalah perubahan bentuk konstruktor pada method. Dalam hal perubahan bentuk ini terjadi 2 peristiwa yaitu :
- Overload : perubahan pada jenis atau jumlah parameternya
- Overriding : perubahan pada body method pada proses pewarisan atau penulisan kembali
- Pembungkusan/ Tingkat Akses/ Encapsulation
Pembungkusan adalah proses pemberian tingakatan pengaksesan pada method dan variable dalam class.
- Publik : sifat yang diberikan agar dapat diakses pada semua class dan semua package
- Default : dapat diakses pada semua class dalam package yang sama
- Protected : agar dapat diakses pada class itu sendiri dan anak(class turunan)
- Private : tidak dapat diakses pada lain external/ lain class dengan kata lain hanya bisa diakses pada class itu sendiri
- Modifier Static and Final
- Static : modifier diberikan pada variable dan method agar pengaksesan tanpa inisialisasi objek, tetapi langsung melalui class karena milik bersama
- Final : modifier yang diberikan pada variable tersebut menjadi konstanta/ tetap/ tidak bisa diubah lagi. Jika modifier diberikan pada method maka mencegah dari proses override pada class turunan. Jika diberikan pada class, maka mencegah dari proses penurunan.
- Abstrac Class dan Interface
- Abstrac Class adalah class yang abstract yang biasanya dibuat untuk class yang tertinggi dalam hierarki
- Berisi kumpulan method abstract (method tanpa body)
- Abstract class tidak bisa dibuat objek untuk pengaksesan variable dan methodnya, maka harus diturunkan dan diimplementasikan method abstractnya
- Non Abstract method jika ditulis kembali dinamakan override. Keyword penurunan “extends”
- Implementasi abstract method disebut “implements”
- Interface Class
- Mirip class akan tetapi bukan class. Hanya berisi sekumpulan abstract method dan final variable yang nantinya abstract method pada interface ini diimplementasikan pada class
- Keyword implementasi abstract method adalah “implements”. Jika interface terjadi proses pewarisan maka tetap “extends” (penurunan interface dengan interface)
Label:
Java