PHP - OOP(NYP) - Kalıtım/Inheritance

Yazan zeynelakcay Tarih 2016-05-26

PHP, NYP konularından kalıtım/inheritance konusunu ele alalım, genel manda bir sınıfın başka bir sınıftan türemesidir, türediği sınıfın özellik ve metodlarını miras almaktadır.  Bu arada kısa bir bilgi vermek gerekirse fonksiyonlar sınıf içinde method ismini almaktadırlar. Miras alma işleminde anahtar kelimemiz 'extends'  olmaktadır ,Kodumuzu inceleğimizde  school sınıfının extends anahtar kelimesini kullanarak author sınıfından miras aldıgını görüyoruz, artık scholl sınıfından , author sınıfının özellik ve metodlarına erişebileceğim anlamına geliyor,  Aklınıza geliyordur özellik veya metodlardam  erişmesini istemediklerim var ise, himm erişim belirteçleri private,public,protected  olayları onlarda deginelim hemen, public erişim belirteçine sahip sınıf özellikleri ve metodlarına sınıf dışından de erişebiliriz, bu ne demek oluyor sınıfın nesnesini üret içindeki özellik ve methodlara eriş. Private erişim belirteçine sahip sınıf özellik ve metodlarına ise sınıf dışardan erişim saglayamayız. Protected erişim belirtecine sahip özellik ve metodlara ise private deki gibi sınıf dışından erişim yoktur fakat miras alan sınıf üzerinden protected olan yapılara erişilebilir.


class author 
{
	var $name = "Zeyel Akçay" ;
	function __construct()
	{
		echo "Miras alınan sınıfın Constructor u calısıyor 
";
	}
	function book(){
		echo "Yazarın Kitapları";
	}
}

class school extends author
{
	
	function __construct($schoolName)
	{
		parent::__construct(); 
		echo $schoolName;
	}
	function run(){
		echo " 'de  Çalışiyor";
	}

}

$okulNesne  = new school("KTU");
echo $okulNesne->run()."
";
echo $okulNesne->book()."
";
echo $okulNesne->name;

 

Taglar: PHP Kalıtım OOP Inheritance