Java Abstract Class Kullanımı - 05-13-2014

advertisement
Java Abstract Class Kullan?m? - 05-13-2014
by Burak - Burak Kutbay'?n Ki?isel Blog'u | - http://blog.burakkutbay.com
Java Abstract Class Kullan?m?
by Burak - Sal?, May?s 13, 2014
http://blog.burakkutbay.com/java-abstract-class-kullanimi.html/
Bu yaz?da Java Abstract Class Kullan?m?'na de?inece?im. Abstract Class, yani soyut s?n?flard?r. Soyut
S?n?flar?n ortak özelliklerini kullanabilmekteyiz. Soyut S?n?flar kendisinden türeyen s?n?flard?r. Soyut
s?n?flardan nesne olu?turulamaz. Bunun yerine extends edilerek yeni s?n?flara o özelli?i
kullan?larak soyut metodlar üretilir.
Soyut metotlar alt s?n?flar için extends edildi?i s?nf?n özelliklerini kullanarak farkl? sonuçlar üretir.Her
alt s?n?fa da override edilmek zorundad?r. Ba?ka nesnelerden ba??ms?z ve habersiz bir ?ekilde çal???r.
Yaz?l?mlar?m?zda bir i?in belirli özelliklerini tekrar tekrar kullanma durumunda kald???m?z
zamanlarda ayn? i?in farkl? metodlar?n? ça??rarak i?lem yapmam?za olanak sa?lamaktad?r. Kal?t?m
yani özelliklerin miras edilmesi gibi bir durumu kullanmak istiyorsak Abstract kullanmal?y?z. Soyut
s?n?flarda new anahtar sözcü?ü ile bir nesne üretilmemektedir. Extends yap?larak sa?lanmaktad?r.
Programc? için Soyut S?n?f esnek de?ildir.
Daha aç?klay?c? olmak gerekirse. Bir arabam?z var ancak her araban?n yap?l?? ?ekli modeli, cinsi,
fiyat? gibi özellikler farkl?l?klar göstermektedir. Bu farkl?l?klar ne kadar büyük ya da az olursa olsun
"Araba" oldu?u gerçe?ini de?i?tirmeyecektir. Her farkl? model'e sadece Araba diyip geçemeyiz bu
kullan?m yönteminde model, fiyat farkl?l?klar?n?n kullanabilmekteyiz sadece.
Kullan?m ?ekli
public abstract class SINIF_ADI //s?n?f tan?mlamas?
{
public abstract METOD(); //soyut method tan?mlamas?
}
public class SINIF_ADI extends TURETILEN_SINIF //alt s?n?f tan?mlamas
?
{
}
Örnek
Ö?renci'nin özelliklerini belirten bir örnek. Her ö?rencinin farkl? özelliklerin bulundu?u bir Soyut
s?n?ft?r. Ad, Soyad ve Numara bilgileri Ö?renci s?nf?n?n bir özelli?idir ve bu özellikler sadece Ö?renci
s?n?f?ndan türetilir.
1/2
Java Abstract Class Kullan?m? - 05-13-2014
by Burak - Burak Kutbay'?n Ki?isel Blog'u | - http://blog.burakkutbay.com
public abstract class Ogrenci_Sinifi {
private String ad;
private String soyad;
private int numara;
public abstract String getAd();
public abstract String getSoyad();
public int getNumara() {
return this.numara;
}
public class Ogrenci extends Ogrenci_Sinifi {
public String getAd() {
return "Burak";
}
public String getSoyad() {
return "Kutbay";
}
public int getNumara() {
System.out.println(super.getNumara());
return super.getNumara();
}
}
}
_______________________________________________
PDF generated by Kalin's PDF Creation Station
2/2
Powered by TCPDF (www.tcpdf.org)
Download