antarmuka:
Secara umum, sebuah antarmuka mengekspos kontrak tanpa mengekspos detail implementasi yang mendasarinya. Dalam Pemrograman Berorientasi Objek, antarmuka mendefinisikan tipe abstrak yang mengekspos perilaku, tetapi tidak mengandung logika. Implementasi didefinisikan oleh kelas atau tipe yang mengimplementasikan antarmuka.
@interface: (Jenis anotasi)
Ambil contoh di bawah ini, yang memiliki banyak komentar:
public class Generation3List extends Generation2List {
// Author: John Doe
// Date: 3/17/2002
// Current revision: 6
// Last modified: 4/12/2004
// By: Jane Doe
// Reviewers: Alice, Bill, Cindy
// class code goes here
}
Alih-alih ini, Anda dapat mendeklarasikan jenis anotasi
@interface ClassPreamble {
String author();
String date();
int currentRevision() default 1;
String lastModified() default "N/A";
String lastModifiedBy() default "N/A";
// Note use of array
String[] reviewers();
}
yang kemudian dapat membubuhi keterangan kelas sebagai berikut:
@ClassPreamble (
author = "John Doe",
date = "3/17/2002",
currentRevision = 6,
lastModified = "4/12/2004",
lastModifiedBy = "Jane Doe",
// Note array notation
reviewers = {"Alice", "Bob", "Cindy"}
)
public class Generation3List extends Generation2List {
// class code goes here
}
PS:
Banyak anotasi menggantikan komentar dalam kode.
Referensi: http://docs.oracle.com/javase/tutorial/java/annotations/declaring.html