我有一个Edible接口,一个Location类和一个实现Edible的Strawberry类。我可以编译并运行,没有任何问题。然而,我认为一个实现接口的类需要包含所有的接口方法。 我的问题是,为什么我没有得到与此代码错误,因为草莓实施食用,但不包括getLocation方法?如果我将getLocation的返回类型更改为一个基元,我得到我正在寻找的错误。返回自定义类型是否有所作为?如果是这样,为什么?Java界面 - 自定义返回类型?
public interface Edible {
Location getLocation();
}
public class Location {
private String name;
public Location(String n){
name = n;
}
}
public class Strawberry implements Edible{
int cals;
Location location;
public Strawberry(int c, Location l){
cals = c;
location = l;
}
}
此代码的确生成编译错误。你确定你在这里粘贴了**确切的**代码吗? – Mureinik