Hola:
Intento usar OO para programar y el problema con el que me tope es la herencia:
Tengo mi clase que esta:
class soporte{
public $titulo;
protected $numero;
private $precio;
function __construct($tit, $num, $precio){
$this->titulo = $tit;
$this->numero = $num;
$this->precio = $precio;
}
public function dame_precio_sin_iva(){
return $this->precio;
}
public function dame_precio_con_iva(){
return $this->precio*1.16;
}
public function dame_numero_identificacion(){
return $this->numero;
}
public function imprime_caracteristicas(){
echo $this->titulo;
echo "<br>" . $this->precio . " (IVA no incluido)";
}
}
Y la clase que hereda es:
class cinta_video extends soporte{
var $duracion;
function __constructor($tit,$num,$precio,$duracion){
parent::__constructor($tit,$num,$precio);
$this->duracion = $duracion;
}
public function imprime_caracteristicas(){
echo "<br>Película en VHS:<br>";
parent::imprime_caracteristicas();
echo "<br>Duración: " . $this->duracion;
}
}
instancio a la clase padre y heredada:
$micinta = new cinta_video("Los Otros", 22, 4.5, "115 minutos");
echo "<b>" . $micinta->titulo . "</b>";
echo "<br>Precio sin IVA: " . $micinta->dame_precio_sin_iva() . " euros";
echo "<br>Precio con IVA: " . $micinta->dame_precio_con_iva() . " euros";
$micinta->imprime_caracteristicas();
Debiera imprimirme así:
Los Otros
Precio sin IVA: 4.5 euros
Precio con IVA: 5.22 euros
Película en VHS:
Los Otros
4.5 (IVA no incluido)
Duración: 115 Minutos
Pero me imprime sin los datos de Duración:
Los Otros
Precio sin IVA: 4.5 euros
Precio con IVA: 5.22 euros
Película en VHS:
Los Otros
4.5 (IVA no incluido)
Duración:
alguien podría decirme donde se fue el dato de Duración.
Gracias por su ayuda