« Programmation Java/Polymorphisme » : différence entre les versions

Contenu supprimé Contenu ajouté
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 :
Le polymorphisme veut dire que le même service, aussi appelé opération ou méthode, peut avoir un comportement différent suivant la Classe dans laquelle il est utilisé.
 
*Polymorphisme parametrable (par surcharge de methodes), les signatures (type et arguments diverges)
 
<pre>
public class A{
 
private int a;
 
public A{ //constructeur 1
System.out.println('Creation de A');
}
 
public A(int a){ //constructeur 2 par surcharge
this.a=a;
}
 
public int getter()(
return this.a;
}
 
public static void main(String[] args) {
this(); //construction par 1
this(1); //construction par 2
}
 
}
</pre>
 
*Polymorphisme d'héritage (par redefinition de methodes)
 
<pre>
public class B extends A{
 
private int b;
 
public B{
super();
System.out.println('Creation de B');
}
public B(int a, int b){
super(a);
this.b=b;
System.out.println('Creation de B');
}
 
public int getter()(
return this.b;
}
 
public void setter(int a, int b)(
super(a);
this.b=b;
}
 
public static void main(String[] args) {
B ob1= new B(10,20);
((A)ob1).getter(); // Par type casting, appel de methode A
}
 
}
</pre>