J. E. N. I.
11.5.2 Interface vs. Class Abstract
Berikut ini adalah perbedaan utama antara sebuah interface dan sebuah class abstract: method interface tidak punya tubuh, sebuah interface hanya dapat mendefinisikan konstanta dan interface tidak langsung mewariskan hubungan dengan class istimewa lainnya, mereka didefinisikan secara independent.
11.5.3 Interface vs. Class
Satu ciri umum dari sebuah interface dan class adalah pada tipe mereka berdua. Ini artinya bahwa sebuah interface dapat digunakan dalam tempat-tempat dimana sebuah class dapat digunakan. Sebagai contoh, diberikan class Person dan interface PersonInterface, berikut deklarasi yang benar:
PersonInterface |
pi = new Person(); |
Person |
pc = new Person(); |
Bagaimanapun, Anda tidak dapat membuat instance dari sebuah interface. Contohnya:
PersonInterface pi = new PersonInterface(); // COMPILE // ERROR!!!
Ciri umum lain adalah baik interface maupun class dapat mendefinisikan method. Bagaimanapun, sebuah interface tidak punya sebuah kode implementasi sedangkan class memiliki salah satunya.
11.5.4 Membuat Interface
Untuk membuat interface, kita tulis, public interface [ InterfaceName ] {
// beberapa method tanpa isi
} Sebagai contoh, mari kita membuat sebuah interface yang mendefinisikan hubungan antara dua object menurut urutan asli dari object.
public interface Relation
{ public boolean isGreater( Object a, Object b); public boolean isLess( Object a, Object b); public boolean isEqual( Object a, Object b);
}
Pengenalan Pemrograman 1 12