JavascriptProva

giovedì 9 febbraio 2012

Ancora considerazioni sull'ereditarietà in Javascript...

Ecco, io ho una classe (chiamiamola così) e creo una classe "discendente" che eredita i suoi membri.

Ora creo due istanze, una della classe madre e una della classe figlia.


<script>


function Veicolo(passeggeri){
 this.velocita=5;
 this.passeggeri=0;
 if(passeggeri>0)
  this.passeggeri=passeggeri;

 this.carica=function(passeggeri){
  this.passeggeri+=passeggeri;
 }
 
  

}

function Aereo(passeggeri){
 this.altitudine=0;
 this.decolla=function(){
  this.altitudine=10;
 }
}

auto=new Veicolo();
jumbo=new Aereo();
alert(auto.velocita);
alert(auto.altitudine);
alert(jumbo.altitudine)

</script>
Ecco: l'istanza della classe genitrice, che non ha la proprietà altitudine, mi dà un undefined quando chiedo di mettermi a video la proprietà altitudine.
Questo non succede per l'istanza della classe figlia, che invece ha una proprietà altitudine.

Sono tutte cose lapalissiane, ma è meglio rimarcarsele!

Nessun commento:

Posta un commento