imagina que
paciente2 tiene otro metodo... llamado dameNombre()
¿como obtienes el nombre "juan" ???, antes dado con esta clase... imposible, esta mal implementado....
sin embargo, la clase
paciente lo hara con claridad... ya que el nombre fue asignado a su variable interna... de modo que tiene mas sentido y utilidad que la clase
paciente2 Código PHP:
class paciente{
var $nombre;
var $edad;
function datos($nombre_enviado,$edad_enviada){
$this->nombre=$nombre_enviado;
$this->edad=$edad_enviada;
}
/* function imprimeDatos() {
echo "El paciente ".$this->nombre." tiene ".$this->edad;
}*/
function dameNombre() {
return $this->nombre;
}
function dameEdad() {
return $this->edad
}
// ...
}
/** instanciamos la clase */
$instancia= new paciente();
$instancia->datos("pepe",33);
// $instancia->imprimeDatos();
echo "El paciente ".$instancia->dameNombre()." tiene ".$instancia->dameEdad();
y esa es una particularidad de un objeto, ya que eso es una clase... OOP!
¿¿ahora entiendes como no logras lo mismo???
¿¿ahora entiendes el poder de $this ???
PDTA: te sugiero leas algun buen libro de OOP, te sorprenderías...