Hello,

Je cherche à redéfinir une méthode d'une interface que j'implémente, mais il y a une méthode avec la même signature dans une classe abstraite dont j'hérite, et du coup c'est comme s'il ne voyait pas la méthode de l'interface.

Un exemple simple:
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
interface ITest {
	public Integer test(String param1);
}
 
abstract class ATest {
	public abstract String test(String param1);
}
 
public class Test extends ATest implements ITest{
	// je voudrais overrider la méthode de l'interface...
	//  mais: "The return type is incompatible with ATest.test(String)"
	//  comment spécifier que c'est la méthode de 
	//  l'interface et non celle de la classe abstraite que je veux redéfinir??
	@Override
	public Integer test(String param1) { 
		return 4;
	}	
}
Y a-t-il un moyen??

Merci