Précédent | Suivant |
Exemple :
<?php
class vehicule {
var $roues;
var $passagers;
var $classname = "véhicule";
var $nom = "";
function vehicule($val1, $val2) {
$this->roues = $val1;
$this->passagers = $val2;
}
function init_nom($nom_type) {
$this->nom = $nom_type;
}
function jesuis() {
echo "je suis un
véhicule à $this->roues roues";
echo " et $this->passagers
passagers, ";
echo "mon type est
$this->classname.";
if ($this->nom) {
echo "Je m'appelle
$this->nom.";
echo "<br><br>";
}
}
}
// héritage de la
classe véhicule
class velo extends vehicule {
var $classname = "vélo";
// redéfinition de
l'attribut $classname
//
"construction" de la classe vélo
function velo() {
$this->vehicule(2, 1);
}
}
// véhicule motorisé issu de la
classe vehicule
class mvehicule extends vehicule {
var $classname = "motorisé";
// redéfinition de
l'attribut $classname vareur; $mot
function init_moteur($cylindre) {
$this->moteur = $cylindre;
}
function jesuis() {
// on surcharge la
fonction jesuis() de la classeehicule v
echo "Mon moteur
est de $this->moteur cc.<br>";
vehicule::jesuis(); //appel à la méthode
jesuis() de la classe vehicule
}
}
// les classes voiture et moto
héritent de la classe mvehicule
class voiture extends mvehicule {
var $classname = "voiture";
function oiture()
$this->vehicule(4,5);
}
}
class moto extends mvehicule {
var $classname = "moto";
function moto() {
$this->vehicule(2, 2);
}
}
// création des objets bmx, cb,
twingo
$bmx = new elo;
$cb = new moto;
$twingo = new voiture;
$bmx->init_nom ("BMX");
//initialisation de ces objets
$twingo->init_nom("TWINGO");
$twingo->init_moteur(1600);
$cb->init_nom("CB 500");
$cb->init_moteur(500);
// on appelle la fonction jesuis()
de ces objets pour savoir qui ils sont
$bmx->jesuis();
$twingo->jesuis();
$cb->jesuis();
?>
Précédent | Suivant |