Salut,
J'aimerais votre avis sur un bout de code assez troublant.
Si je ne dis pas de betise, l'execution d'une methode depends du type dynamique de l'objet et non pas du type de declaration de la variable.
Alors je ne comprends pas pourquoi ce code:
Produit cette sortie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public abstract class MyTest { public abstract void toto(Object ...a); } class Test2 extends MyTest { public void toto(Object ...a) { System.out.println("La une"); } public void toto(Object a, Object b) { System.out.println("La deux"); } public static void main(String args[]) { Test2 m2 = new Test2(); MyTest m1 = m2; m1.toto("A", "B"); m2.toto("A", "B"); } }
BulboLa une
La deux
Partager