Bugün kendim için bişeyler yazarken, ne kadar hoş olduğunu fark ettim, böyle birden içim ısındı bu extends olayına =)
peki nedir bu extends zımpırtısı? kilimcinin kör oğlu diyip geçmeyeceğiz..
şöyle anlatayım, bir sınıf oluşturduk. belli özelliklere , belli metodlara sahip.
yeni bir sınıf daha yaratacağız. fakat bu bir öncekine çok benzer. aynı kodları içeriyor, ekstrası var. binevi uzatıyoruz diyelim.
yada kafanızda kalması açısından şöyle bir örnek vereyim,
eski class'ımız mısırdaki şimdiye kadar hiç görmediğimiz zengin akrabamız oluyor. ve ölüyor. ne olur? mirası bize kalır yani yeni varis'e. işte PHP'de tek farkı, gerçekten ölmez. eskiside hala kullanılır. ama eskisinin özelliklerine sahip yeni bir nesne oluşturmuş oluruz. onun mirasının üstüne yeni özellikler eklenmiş olur.
kullanımı basitce anlatayım, devamında örnek verdiğimde daha iyi anlayacaksınız.
eski sınıfımız: yazar
olsun.
yeni olusturacagımız sınıfımızda: forum
olsun.
bu şekilde açacağız yeni açacağımız class'ı.
class1:
herneyse biraz saçmalamış olabilir =) yazım hatası vs olabilir, şuan stajdayım işim gücüm yok diye direk ilk ağızdan makale yazıyorum.
yeni class'ımızı oluşturalim extends kullanarak.
peki nedir bu extends zımpırtısı? kilimcinin kör oğlu diyip geçmeyeceğiz..
şöyle anlatayım, bir sınıf oluşturduk. belli özelliklere , belli metodlara sahip.
yeni bir sınıf daha yaratacağız. fakat bu bir öncekine çok benzer. aynı kodları içeriyor, ekstrası var. binevi uzatıyoruz diyelim.
yada kafanızda kalması açısından şöyle bir örnek vereyim,
eski class'ımız mısırdaki şimdiye kadar hiç görmediğimiz zengin akrabamız oluyor. ve ölüyor. ne olur? mirası bize kalır yani yeni varis'e. işte PHP'de tek farkı, gerçekten ölmez. eskiside hala kullanılır. ama eskisinin özelliklerine sahip yeni bir nesne oluşturmuş oluruz. onun mirasının üstüne yeni özellikler eklenmiş olur.
kullanımı basitce anlatayım, devamında örnek verdiğimde daha iyi anlayacaksınız.
eski sınıfımız: yazar
olsun.
yeni olusturacagımız sınıfımızda: forum
olsun.
bu şekilde açacağız yeni açacağımız class'ı.
- Kod:
class forum extends yazar {
// yeni sevdim-alamadım diyalogları.
}
class1:
- Kod:
class yazar{
var $nick;
var $alan;
var $hobi;
function yazargir($gir) {
$this->nick=$gir;
}
function ilgi_alani_gir($gir) {
$this->alan=$gir;
}
function hobigir($gir) {
$this->hobi=$gir;
}
function yazargoster(){
echo 'Rumuz : '.$this->nick;
echo '<br>Alani : '.$this->alan;
echo '<br>Hobileri : '.$this->hobi;
}
}
herneyse biraz saçmalamış olabilir =) yazım hatası vs olabilir, şuan stajdayım işim gücüm yok diye direk ilk ağızdan makale yazıyorum.
yeni class'ımızı oluşturalim extends kullanarak.
- Kod:
class forum extends yazar{
var $forumismi="ForumUltra";
function forumcu($nicki,$alani,$hobisi) {
yazargir($nicki);
ilgi_alani_gir($alani);
hobigir($hobisi);
echo $nicki.' adli yazar '.$this->forumismi.' forumuna dahil edildi';
}
}
Paz Mart 18, 2012 11:47 pm tarafından VencrA
» Ferda Anıl Yarkın 4 Albüm Birden! ..::ForumUltra::..
C.tesi Ağus. 15, 2009 9:20 pm tarafından VencrA
» Şu Hayatta Kardeşim Diyebileceğim Adam...
Cuma Ağus. 14, 2009 11:26 pm tarafından Misafir
» awatarlarrr
Cuma Ağus. 14, 2009 5:13 pm tarafından VencrA
» ****** ten deyişler
Cuma Ağus. 14, 2009 4:10 pm tarafından yağmur
» Msn Messenger 80004005 Hata Kodu ve Çözümü
Cuma Ağus. 14, 2009 11:44 am tarafından VencrA
» Hata 81000314, 81000377 veya 81000378: Kişi listeniz kullanılamıyor
Cuma Ağus. 14, 2009 11:44 am tarafından VencrA
» Msn 100852 Yeni Özellik
Cuma Ağus. 14, 2009 11:44 am tarafından VencrA
» Msn Messenger 80048869 Hata Kodu ve Çözümü
Cuma Ağus. 14, 2009 11:43 am tarafından VencrA