Ragazzi, ho scritto un semplicissimo codice di prova per vedere come funzionano le classi in PHP.
Codice PHP:
<?php
Class Persona{
private $_nome;
private $_cognome;
public function __construct($nome,$cognome){
$this->_nome=$nome;
$this->_cognome=$cognome;
}
function Stampa(){
echo("Persona: $this->_cognome $this->_nome");
}
}
Class RichPers extends Persona{
private $_titolo;
function __construct($nome,$cognome,$titolo){
parent::__construct($nome,$cognome);
$this->_titolo=$titolo;
}
function Stampa(){
echo("Persona: $this->_titolo $this->_cognome $this->_nome");
}
}
$persona=new RichPers("Nome","Cognome","Sig.");
$persona->Stampa();
?>
Io da questo codice mi aspetterei che a video ci sia scritto: Persona: Sig. Cognome Nome
Invece c'è solo Persona: Sig.
In cosa ho sbagliato?
Le due variabili $_nome e $_cognome le ho impostate a private per non essere raggiungibili all'esterno, ma non è che così non sono raggiungibili neanche dalla classe che estende?
Nel caso voglia utilizzare delle variabili non direttamente visibili dall'esterno ma visibili dalle classe che estendono che devo fare?
Grazie