Merhaba arkadaşlar, uzun zamandır doğru düzgün birşeyler yazamadım, sınav,iş derken..
Abstract metod ve sınıflar nedir, nerede nasil, neden kullanilir? Bu soruların yanıtlarını yazmaya çalışacağım inş.
Abstract sınıf/metodlara, özet yada soyut sınıf/metod da denilmektedir. Bazen hiyerarşinin en tepesindeki sınıfın bizim için pek anlamı olmayabilir. En tepede bulunan sınıfın kendisinden türetilecek sınıfların neye benzeyeceğini belirtmesini isteyebiliriz. (Ben takip edenlerin daha kolay anlaması açısından Ev-Kiralikev,Satilikev düzeninden devam edeceğim) En tepede Ev sınıfımızda bulunan evGoster metodu satilik/kiralik evlerin özelliğini gösteriyor. Biz Ev sınıfında tanımladığımız evGoster() metodunu çağırdığımızda ne iş yapacağını (hangi evi göstereceğini) bilemez. Eğer burada değil de türeyen sınıflarda belirtelim derseniz, o zaman türeyen sınıfların çok biçimliliği desteklediği söylenemez.
O zaman şöyle yapalım ; evGoster() metodunu bildirelim ancak hiçbir işlem yapmasın, yani iskeleti olsun ama gövdesi olmasın. Türeyen sınıflarda bu metod özelleştirilsin. Burada abstract araya girmektedir.
Abstract Metodlar;
abstract anahtar kelimesi ile bildirilir ve bildirilen bu metod içsel olarak zaten sanal olduğu için ayrıca virtual anahtar kelimesini kullanmaya gerek yoktur.
more »
