Bonjour,
C'est peut être parce que c'est Dimanche, un coup de fatigue ou bien parce que je vieillis, mais je perds mon latin là.
J'ai écrit cette classe:
et je m'en accommodais très bien, d'autant qu'elle compilait sans problèmes et montrait sous Eclipse son signe Override...
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Jusqu'à ce que je me représente qu'elle n'aurait pas du compiler.
parce que l'interface Cloneable n'est pas générique, et réclame l'implémentation de
Un peu ébranlé, je me suis dit: tiens, on peut redéfinir le type de retour en implémentant une interface non générique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part public Object clone();
Mon monde vacillait déjà quelque peu...
Mais ceci passe aussi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Redéfinir le type de retour d'une méthode dont on hérite... je n'avais jamais vu cela avant. Et pourtant, ça passe.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7public class SujetExamen extends Sujet { public SujetExamen clone() { return(this.clone()); } }
Pourquoi est-ce accepté?
En vous remerciant,
Grunt.

 

 
		
		 
         
 

 
			
			


 
 
 
   


 implements Cloneable avec public StringLocale clone() (et non pas public Object clone()) fonctionne?!
 implements Cloneable avec public StringLocale clone() (et non pas public Object clone()) fonctionne?!
				 Répondre avec citation
  Répondre avec citation

 
  
 
 
			 
   
  
				


 Envoyé par grunt2000
 Envoyé par grunt2000
					


 
			 
 
Partager