Informatique


Creer un objet avec une classe

Aller à

Déclaration des classes

La classe est un plan à partir duquel on peut instancier (construire) une infinité d'objets ayant les mêmes propriétés et les mêmes méthodes. On commence la déclaration (définition) d'une classe avec le mot clé class.

On y trouve toujours une méthode qui permet de construire les instances (ou objets!), il s'agit de la méthode constructor (constructeur in french).

Même si ce n'est pas une obligation, on y trouvera des méthodes setter et getter.

En JS les setters et les getters ne protègent absolument pas les variables, les variables sont toujours publiques !!

Syntaxe
class NomClasse	{
		constructor {
			
		}
}

Créer des objets avec une classe

Créons la classe Animal:

Démo
<h2>On crée 2 objets sur base d'une classe</h2>
<script>
class Animal { 
//La méthode constructor
constructor(nom,sexe,age){
	this.nom=nom;
	this.sexe=sexe;
	this.age=age;
	this.photo=this.nom+".jpg";
	
	this.affic=function(){
		var s= (this.sex==="F")? "Femelle":"Mâle";
		return "<div>"+s+" - "+this.nom+" - "+this.age+" ans"+" - "+this.photo+"</div>";
	}	
}
}
var monPinguin = new Animal("Costard","F","5");
console.log(monPinguin);
document.write(monPinguin.affic());
</script>

On constate dans la console:


L'héritage avec une classe

Le mot clé extends indique qu'une classe fille hérite d'une classe mère, la méthode super appelle le constructeur de la classe mère

Démo
	<h2>Héritage à partir d'une classe</h2>
	<script>
class Chien extends Animal {
	constructor(nom,sexe,age) {
		// Héritage de la classe Animal
		super(nom,sexe,age);
		//Propriétés caractéristiques du chien
		this.cri="Aboiement";
		this.male="Chien";		
		this.femelle="Chienne";
	}
}
// instanciation
var Stich = new Chien("Stich","M","5");
console.log(Stich);
document.write(Stich.affic()); 
	</script>

On constate dans la console: