Java mengimplementasikan Kata Kunci
Contoh
An interface
adalah "kelas" abstrak yang digunakan untuk mengelompokkan metode terkait dengan badan "kosong":
Untuk mengakses metode antarmuka, antarmuka harus "diimplementasikan" (seperti yang diwarisi) oleh kelas lain dengan implements
kata kunci (bukan extends
). Tubuh metode antarmuka disediakan oleh kelas "implement":
// interface
interface Animal {
public void animalSound(); // interface method (does not have a body)
public void sleep(); // interface method (does not have a body)
}
// Pig "implements" the Animal interface
class Pig implements Animal {
public void animalSound() {
// The body of animalSound() is provided here
System.out.println("The pig says: wee wee");
}
public void sleep() {
// The body of sleep() is provided here
System.out.println("Zzz");
}
}
class MyMainClass {
public static void main(String[] args) {
Pig myPig = new Pig(); // Create a Pig object
myPig.animalSound();
myPig.sleep();
}
}
Definisi dan Penggunaan
Kata implements
kunci digunakan untuk mengimplementasikan file interface
.
Kata interface
kunci digunakan untuk mendeklarasikan tipe kelas khusus yang hanya berisi metode abstrak.
Untuk mengakses metode antarmuka, antarmuka harus "diimplementasikan" (seperti yang diwarisi) oleh kelas lain dengan implements
kata kunci (bukan extends
). Tubuh metode antarmuka disediakan oleh kelas "implement".
Catatan tentang Antarmuka:
- Itu tidak dapat digunakan untuk membuat objek (dalam contoh di atas, tidak mungkin membuat objek "Hewan" di MyMainClass)
- Metode antarmuka tidak memiliki badan - badan disediakan oleh kelas "implement"
- Pada implementasi antarmuka, Anda harus mengganti semua metodenya
- Metode antarmuka secara default
abstract
danpublic
- Atribut antarmuka secara default
public
,static
danfinal
- Antarmuka tidak dapat berisi konstruktor (karena tidak dapat digunakan untuk membuat objek)
Mengapa Dan Kapan Menggunakan Antarmuka?
Untuk mencapai keamanan - sembunyikan detail tertentu dan hanya tampilkan detail penting dari suatu objek (antarmuka).
Java tidak mendukung "multiple inheritance" (sebuah kelas hanya dapat mewarisi dari satu superclass). Namun, itu dapat dicapai dengan antarmuka, karena kelas dapat mengimplementasikan banyak antarmuka. Catatan: Untuk mengimplementasikan beberapa antarmuka, pisahkan dengan koma (lihat contoh di bawah).
Beberapa Antarmuka
Untuk mengimplementasikan beberapa antarmuka, pisahkan dengan koma:
Contoh
interface FirstInterface {
public void myMethod(); // interface method
}
interface SecondInterface {
public void myOtherMethod(); // interface method
}
// DemoClass "implements" FirstInterface and SecondInterface
class DemoClass implements FirstInterface, SecondInterface {
public void myMethod() {
System.out.println("Some text..");
}
public void myOtherMethod() {
System.out.println("Some other text...");
}
}
class MyMainClass {
public static void main(String[] args) {
DemoClass myObj = new DemoClass();
myObj.myMethod();
myObj.myOtherMethod();
}
}
Halaman Terkait
Baca lebih lanjut tentang antarmuka di Tutorial Antarmuka Java kami .