İLERİ PROGRAMLAMA Dersi Java’da Soyut Sınıflar ve Arayüzler soru detayı:
SORU:
Aşağıda verilen arayüzde Javan kodları hangi amaçla kullanılmıştır?
/* Sirket.java */
public class Sirket implements Comparable {
private int calisanSayisi;
private String isim;
public Sirket (String isim, int calisanSayisi) {
this.isim = isim;
} this.calisanSayisi = calisanSayisi;
public int calisanSayisiGetir() { } return this.calisanSayisi;
public String isimGetir() { } return this.isim;
public int compareTo(Object deger) { int sonuc = 0;
Sirket sirket2 = (Sirket) deger;
if(this.calisanSayisiGetir() == sirket2.calisanSayisiGetir())
sonuc = 0;
else if(this.calisanSayisiGetir() >
sirket2.calisanSayisiGetir()) sonuc = 1;
else if(this.calisanSayisiGetir() < sirket2.calisanSayisiGetir())
sonuc = -1;
return sonuc; }
CEVAP:
Program kodları verilen Sirket sınıfı, bir önceki örnekteki gibi Comparable adlı Java kütüphanesi arayüzünü uygu- layan bir sınıftır. Bu sınıfın içerisinde de, compareTo isimli metodun içeriğinin tanımlandığını görmekteyiz. Sirket sınıfının kullanımını bir uygulama içerisinde görebilmek için ise aşağıdaki Java kodlarını içeren HazirArayuzUygulamasi2 isimli sınıf kullanılmaktadır. HazirArayuzUygulamasi2 sınıfı içerisinde Sirket türündeki nesneler oluşturulmuştur. Daha sonra, bu nesnelere ait compareTo metodu kullanılarak şirketlerin büyüklük- lerinin birbiriyle kıyaslamaları yapılmıştır. Kıyaslama ölçütü olarak şirketlerin çalışan sayıları kullanılmaktadır.