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:

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");
    }
}
Produit cette sortie:

La une
La deux
Bulbo