interface
- Java kursu
- Orta seviye
- Ders 47/116
- 5 dk
interface ile sözleşme tanımlamayı öğrenirsin.
interface nedir?
Bir interface, sınıfların uygulayacağı metotların sözleşmesini tanımlar. İçinde metot imzaları bulunur; gövde yoktur. interface anahtar kelimesiyle başlar.
Örnek: interface Drawable { void draw(); }. Burada Drawable bir sözleşmedir; draw metodu yalnızca imzasıyla bildirilir. Bir sınıf bu sözleşmeyi uyguladığında draw metodunu yazmak zorundadır. Interface, ne yapılması gerektiğini söyler; nasıl yapılacağını sınıfa bırakır. Bu, farklı sınıfların ortak bir davranışı paylaşmasını sağlar.
Interface içinde metot imzası
Interface içindeki metotların gövdesi yoktur. Yalnızca imza yazılır: dönüş tipi, isim ve parametreler. Noktalı virgül ile biter.
Örnek: interface Speaker { void speak(String msg); }. Burada speak metodunun dönüş tipi void, parametresi String msg'tir. Gövde yok; yalnızca sözleşme. Uygulayan sınıf bu metodu kendi gövdesiyle yazar. public yazmasan bile interface metotları örtük olarak public olur. Bu, sözleşmenin her zaman açık olması anlamına gelir.
Uygulama Drawable interface'ini tanımla
Drawable adında bir interface tanımla. İçine void draw() metodu imzasını ekle. Sonra class Circle implements Drawable yaz; public void draw() metodunu gövdesiyle yaz ve içine System.out.println("Daire çiziliyor"); koy. main içinde new Circle().draw() çağır.
Başlangıç kodu
// Drawable interface'ini tanımla
// Circle implements Drawable yaz
// main'de new Circle().draw() çağırÖrnek çözüm
interface Drawable {
void draw();
}
class Circle implements Drawable {
public void draw() {
System.out.println("Daire çiziliyor");
}
}
class Main {
public static void main(String[] args) {
new Circle().draw();
}
}Beklenen çıktı
Daire çiziliyor
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir interface hangi anahtar kelimeyle tanımlanır?
- interface Doğru cevap
- class
- contract
- abstract
Açıklama: interface anahtar kelimesi bir sözleşme tanımlar.
2 interface tanımını tamamla
interface ____ {
void draw();
}
interface Drawable {
void draw();
}
Açıklama: Drawable interface adıdır.
3 Interface bölümlerini eşle
| Kavram | Anlamı |
|---|---|
interface |
Sözleşme kelimesi |
void draw() |
Metot imzası |
Drawable |
Interface adı |
; |
İmza sonu |