9 Temmuz 2012 Pazartesi

                                                                    ABSTRAKT  SINIFLER
Abstrakt sinifler adi siniflerden ferqlenir.Teyin olunarken qarsisinda  abstrakt isci sozu yazilir.bunlarin obyekti  birbasa new sozu ile yaradilmaz.Bir sinifin abstrakt olmasi ucun onun  daxilinde  en azi bir abstrakt metod  olmalidir.Hec bir is gormeyen yeni , govdesiz metoda abstrakt metod deyilir.Abstract bir sinifden extends olunan altsinifller bu abstract sinifin icindeki butun abstrakt metodlari mutleq override etmelidir. Abstract siniflerin  Javada esas vezifesi birlesdirici rol oynamasidir.Asagidaki numuneye baxaq:
 
public abstract class Calisan {
   public abstract void calis();
   public void istirahetEt(){
   System.out.println("Istirahet vaxti");
}
}
public class Mudur extends Calisan {

@Override
public void calis() {
System.out.println("Mudur calisir");
}
}

public class MudurMuavini extends Calisan {

@Override
public void calis() {
System.out.println("MudurMuavini calisir");
}
}

public class Programci extends Calisan {

@Override
public void calis() {
System.out.println("Programci calisir");
}
}

public class IsYeri {
public static void Isebasla(Calisan[] c){
for (int i = 0; i < c.length; i++) {
c[i].calis();
}
}
public static void main(String[] args) {
Calisan[] c=new Calisan[3];
c[0]=new Mudur();
c[1]=new MudurMuavini();
c[2]=new Programci();
Isebasla(c);
  }
}

Belece  Abstract bir sinifden extends olunan altsinifllerin obyekti  asanliqla  Abstract  sinif tipinde olan referansa  baglanir ve polimorfizm ve gec baglanmanin istifadesi mumkun olur.
 



Hiç yorum yok:

Yorum Gönder