Bir sınıfın farklı örnekleri birbirlerinin özel üye değişkenleri hakkında bilmek olabilir sanki.
Ben sorunu vitrin dener bazı kod sağladı, ve bunu anlatmaya çalışacağım.
Biz özel bir üye değişkeni ile bir sınıf var, $hidden. modifyPrivateMember $hidden ile değerini belirler 3. accessPrivateMember parametre olarak bir Object alır ve accesses its private $hidden üyesi em> değerini döndürmek için.
Örnek kod:
<?php
// example.php
class Object {
private $hidden;
public function modifyPrivateMember() {
$this->hidden = 3;
}
public function accessPrivateMember(Object $otherObject) {
return $otherObject->hidden;
}
}
$firstObject = new Object;
$firstObject->modifyPrivateMember();
$otherObject = new Object;
echo $otherObject->accessPrivateMember($firstObject);
Yukarıdaki kod çıktısı:
$ php example.php
3
Nesnelerin private üyeleri aynı sınıftaki diğer örneklerini erişilebilir neden kimse açıklayabilir misiniz? Bu kapsam görünürdeki ihlali için bazı gerekçeler var mı?