Interface (Java)

C++ da olduğu gibi Javada çoklu kalıtım bulunmuyor. Bu yüzden Javada interfaceler kullanılıyor. Interfacelerde metodların kod blokları yazılmıyor. Tek tek classların içinde yazılması gerekiyor. Interfaceye yazdığımız metodları tek tek tanımlamalı ve yazmalıyız. Interfaceden obje oluşturamıyoruz ancak bu interface’i implement eden classlara referans olarak kullanabiliyoruz.

  • Sadece final ve static değişkenler tanımlayabiliyoruz.
  • Bir class birden fazla interface’i implemente edebilir.

Örneğin bilgisayar mühendisi ve makine mühendisi iş başvurusuna gidiyorsunuz. Belgede istenenler olarak adres, mezuniyet, askerlik iş tecrübesi isteniyor. Ayrıca bu belgelerin haricinde ekstra belgeler de getirebiliyorsunuz. Interfacelerde de aynı mantık geçerli. Interface’e uyan tüm classlar yani pc müh ve makine müh ortak özellikleri taşımalarına rağmen (adres,mezuniyet,askerlik) buna ek olarak özellikler ekleyebilirler.

  • Tanımlanırken genellike büyük I kullanılır.
  • Metodların başına public ya da private yazılabiliyor ancak obje oluşturulmadığı için java gerek duymuyor.

Aşağıda örnek bir interface görülmekte:

public interface IMuhendis(){

void askerlik_durumu_sorgula();

String mezuniyet_ortalaması(double derece);

void adli_sicil_sorgula();

void is_tecrubesi(String[] array);

}

  • Interfaceleri kullanabilmek için class isimlerinin yanına implements keywordunu kullanıyoruz. (inheritanceda extends kullanılıyordu)
  • @override etmiş gibi olduğumuzdan classlarda override kullanılıyor.

PcMuhendisi muhendis1 = new pcmuhendisi();

IMuhendis muhendis1 = new PcMuhendisi();

Yukarıda gördüğünüz üzere bir interface’i referans olarak gösterebiliyoruz.

Ancak interfaceden referans gösterecekseniz classın içinde farklı bir metod bulunmaması gerekiyor.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir