⊗ppOpIhOI 36 of 107 menu

PHP'de instanceof Operatörü ve OOP'de Kalıtım

instanceof operatörünü kullanırken kalıtımın özelliklerini inceleyelim. Bir ana sınıfımız ve bir alt sınıfımız olsun:

<?php // Ana sınıf: class ParentClass { } // Alt sınıf: class ChildClass extends ParentClass { } ?>

Alt sınıfın bir nesnesini oluşturalım:

<?php $obj = new ChildClass; ?>

Şimdi instanceof kullanarak nesnemizin ParentClass sınıfına ve ChildClass sınıfına ait olup olmadığını kontrol edelim:

<?php var_dump($obj instanceof ChildClass); // true yazdırır var_dump($obj instanceof ParentClass); // yine true yazdırır ?>

Örnekte gördüğünüz gibi - instanceof operatörü kontrol yaparken ana ve alt sınıflar arasında ayrım yapmaz.

Kafanız karışmasın - eğer nesne gerçekten ana sınıfa aitse, elbette alt sınıfa ait olup olmadığının kontrolü false döndürecektir:

<?php $obj = new ParentClass; // ana sınıfın nesnesi var_dump($obj instanceof ParentClass); // true yazdırır var_dump($obj instanceof ChildClass); // false yazdırır ?>

User sınıfını oluşturun, genel (public) özellikleri name ve surname olsun.

User sınıfından kalıtım alan ve salary özelliği ekleyen Employee sınıfını yapın.

Genel özellikleri name ve population olan City sınıfını yapın.

User sınıfından 3 nesne, Employee sınıfından 3 nesne, City sınıfından 3 nesne oluşturun ve rastgele bir sırayla $arr dizisine yazın.

$arr dizisini bir döngüyle gezin ve User sınıfına veya bu sınıfın alt sınıflarına ait olan nesnelerin name özelliklerini ekrana sütun olarak yazdırın.

$arr dizisini bir döngüyle gezin ve User sınıfına veya bu sınıfın alt sınıflarına ait *olmayan* nesnelerin name özelliklerini ekrana sütun olarak yazdırın.

$arr dizisini bir döngüyle gezin ve tam olarak User sınıfına ait olan, yani City sınıfına veya Employee sınıfına ait *olmayan* nesnelerin name özelliklerini ekrana sütun olarak yazdırın.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet