Ekim 19, 2021
11 11 11 ÖÖ
TCP nedir ? Aktarım Katmanı 2
Aktarım Katmanı Tcp Nedir
Yönlendirme Nedir 2 ?
Yönlendirme Nedir ?
Ağ Katmanı Nedir 2 ?
Ağ Katmanı Nedir ?
Veri Bağı Katmanı Nedir 2 ?
Android Studio Nasıl Kurulur ?
Veri Bağı Katmanı Nedir ?
Fiziksel Katman Nedir ?
Son Yazılar
TCP nedir ? Aktarım Katmanı 2 Aktarım Katmanı Tcp Nedir Yönlendirme Nedir 2 ? Yönlendirme Nedir ? Ağ Katmanı Nedir 2 ? Ağ Katmanı Nedir ? Veri Bağı Katmanı Nedir 2 ? Android Studio Nasıl Kurulur ? Veri Bağı Katmanı Nedir ? Fiziksel Katman Nedir ?
java

Java Arayüzler (Interfaces)

Paylaşım , Takip İçin

Arayüzler (Interfaces)

  • Arayüzler (Interfaces) bazı yönlerden soyut sınıflara benzerler.
  • Arayüzler’de soyut sınıflardan farklı olarak bütün metotlar gövdesiz olarak tanımlanırlar.
  • Arayüzler sınıfların bir işi nasıl yapacağını değil, bu işi yaparken hangi metotları kullanması gerektiğini tanımlar.
  • Ayrayüzler içerisinde miras kullanılabilir.
  • Arayüzler içerisinde tanımlanan değişkenler public static final olmalıdır.
  • Arayüzler içerisinde başka Arayüzler kullanılabilir.
  • Bir arayüz tanımlamak için interface anahtar kelimesi kullanılır.

Basit Bir Arayüz Örneği

package Abstract;

   public interface Calisan {

  public String kurum="Cumhuriyet Üniversitesi";

  public double maasHesapla(int dersSaati);

  public void unvanGoster();

   }
  • Arayüzler de tıpkı sınıflara benzerler fakat arayüzler içerisinde tanımlanan metotların gövdeleri yoktur.
  • Arayüzlere ait değişkenler public, static yada final olabilirler.

Arayüzlerden Miras Almak

  • Tıpkı Üst sınıflar yada Soyut Sınıflar gibi Arayüzler kullanılarak alt sınıflar türetilebilir.
  • Bir arayüzden sınıf türetmek için implements anahtar kelimesi kullanılır. Bu şekilde kullanılan arayüzün bir örneği oluşturulur.
  • Türetilen alt sınıfta mutlaka arayüz içerisinde tanımlanan metotlar override edilerek tekrar oluşturulmalıdır.

Arayüzden Sınıf Kalıtımı -1

public class personel extends Kisi implements Calisan{

   public int dersSaati;

   public String unvan;

   public String bolum;

   public int sicilNo;

   public personel(String adSoyad, String dtarih, char cinsiyet,

   int dersSaati, String unvan, String bolum, int sicil) {

  super(adSoyad, dtarih, cinsiyet);

     this.dersSaati=dersSaati;

     this.unvan=unvan;

     this.bolum=bolum;

     this.sicilNo=sicil;

   }

Arayüzden Sınıf Kalıtımı -2

@Override

public void kisiBilgileri() {

    System.out.println("Kisi adı Soyadı:"+getAdSoyad());

    System.out.println("Sicil Numarası:"+sicilNo);

    System.out.println("Doğum tarihi:"+ super.dogumTarihi);

    System.out.println("Cinsiyet:"+cinsiyet);

    System.out.println("Bölümü:"+this.bolum);

    System.out.println("Kurumu:"+this.kurum);

}

@Override

public double maasHesapla(int dersSaati) {

    double maas=10*dersSaati;

    return maas;

}

@Override

public void unvanGoster() {

    System.out.println(this.unvan);

}

Arayüzden Sınıf Kalıtımı -3

public static void main(String[] args) {

    //Kişi sınıfından bir nesne tanımlanamaz

    //Kisi k=new Kisi();

    personel per=new personel("Daenerys Targaryen", "MS.298", 'K', 40, "Queen",      "Targaryen", 3);

    double kasım=per.maasHesapla(per.dersSaati);

    System.out.print("Unvan:");

    per.unvanGoster();

    System.out.println("Ad Soyad:"+per.getAdSoyad());

    System.out.println("Maas:"+kasım);

    System.out.println("-------------------------------------");

    per.kisiBilgileri();

}

Arayüzlerde Kalıtım

  • Aynı sınıflarda olduğu gibi arayüzlerde de kalıtım mümkündür.
  • extends anahtar kelimesi kullanılarak bir arayüz başka bir arayüzden miras alabilir.
  • Örneğin Calisan arayüzünden satisElemani adında yeni bir arayüz türetelim.
  •  
  public interface satisElemani  extends Calisan

Arayüzlerde Miras -1

package Abstract;

   public interface Calisan {

     public String kurum="Cumhuriyet Üniversitesi";

     public double maasHesapla(int dersSaati);

     public void unvanGoster();

   }
package Abstract;

   public interface satisElemani  extends Calisan {

  public double komisyonOranı=0.3;

  public double calismaSaati();

  public double maasHesapla(int saat);

   }

Arayüzlerde Miras -2

package Abstract;

   public class salesPerson implements satisElemani{

     public static void main(String[] args) {

     }

  @Override

  public void unvanGoster() {

  }

  @Override

  public double calismaSaati() {

  return 0;

  }

  @Override

  public double maasHesapla(int saat) {

  return 0;

  }

   }

Paylaşım , Takip İçin
0 0 votes
Article Rating

Bir Cevap Yazın

0 Yorum
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
HAYALİNDEKİ YAZILIM
%d blogcu bunu beğendi: