Bonjour,

je m'escrime à comprendre les subtilités de l'override et la covariance

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
 
package chap1;
 
public class Q1f {
	public int maMethode(){System.out.println("maMethode : superClass ");};
}
 
class SubClass extends Q1f{
	public int maMethode(){System.out.println("maMethode : subClass ");};
}
 
class SubSubClass extends SubClass{
	public char maMethode(){System.out.println("maMethode : subSubClass ");  };
 
	public static void main (String [] args) {
		Q1f _1 = new SubSubClass();
		_1.maMethode();
 
 
	}
 
}
Un char étant plus petit qu'un int (2 octet contre 4), pourquoi on ne peut pas redéfinir la méthode maMethode dasn SubSUbClass comme ci dessus ??

Merci de vos lumières

bonne soirée à tous.