По моим сведениям, мы не можем использовать частную собственность в унаследованном классе. то, что this.it еще работаетчастный спецификатор в php
<?php
class oops1
{
private $text;
function __construct($txt)
{
$this->text=$txt;
}
function disply()
{
echo 'text:'.$this->text;
}
}
class abc extends oops1
{
public $headertext;
function __construct($ht,$txt)
{
$this->headertext=$ht;
$this->text=$txt;
}
function disp2()
{
echo "Header Text: $this->headertext";
echo "<br>Text: $this->text";
}
}
$obj=new abc("g", "h");
$obj->disp2();
он все еще показывает HeaderText и текст, который определен в базовом классе как частный ... Whats проблема
dnt получить это ......... –
@Davinderkumar Добро пожаловать! Наслаждайтесь своим днем: D – Rizier123
Когда вы делаете '$ this-> text = $ txt;' в классе abc, вы на самом деле создаете свойство с именем '$ text', которое принадлежит классу abc, таким образом вы можете получить к нему доступ непосредственно в class abc, так как он принадлежит этому классу. Если вы хотите назначить '$ this-> text = $ txt' классу oops1, вам придется вызывать' parent :: __ cosntruct() '. Справедливости ради немного странно, что вы можете создавать свойства класса «на лету», впервые увидев его. –