-2

我是泛型的新手。我想SearchableFruit为许多“水果”类编写一个接口,例如:

public interface SearchableFruit<T>{
    //returns a list of newer fruit object than current fruit object
    public static List<T> searchNewerFruit(T curr); 
}

所以我可以将此接口用于类AppleOrange

public class Apple implements SearchableFruit{
    public static List<Apple> searchNewerFruit(Apple currentApple){
    //TODO get apples newers than currentApple
    //return a list of Apples
}

}

我以前从未做过界面,这对我不起作用,你能澄清一下我应该如何正确编写它吗?

有什么建议吗?谢谢!

4

2 回答 2

0

首先,接口不能包含静态方法。其次,您错过了实现中的类型。正确的:

public class Apple implements SearchableFruit<Apple>{
    public List<Apple> searchNewerFruit(Apple currentApple){
    //TODO get apples newers than currentApple
    //return a list of Apples
}

}
于 2013-03-05T15:25:03.160 回答
0

应该是这样的

public interface SearchableFruit<T>{
    public List<T> searchNewerFruit(T curr); 
}

public class Apple implements SearchableFruit<Apple> {
    public List<Apple> searchNewerFruit(Apple currentApple){
        // impl
    }
}
于 2013-03-05T15:25:09.507 回答