这个界面有什么问题?

时间:2012-07-19 15:55:54

标签: java

以下界面有什么问题(如果有的话)?

public interface WorldsBestInterface {
    void favoriteMethod(int greatValue){
        System.out.println("Thanks for the smile");
    }
}

我遇到了解决这个问题的问题。

5 个答案:

答案 0 :(得分:7)

接口中没有任何代码,只有签名。

public interface WorldsBestInterface {
    void favoriteMethod(int greatValue);
}

答案 1 :(得分:6)

不应包含实施。接口只包含方法声明,它不包含实现。

void favoriteMethod(int greatValue){
        System.out.println("Thanks for the smile");
    }

应该是

 public interface WorldsBestInterface {
    void favoriteMethod(int greatValue);
}

答案 2 :(得分:1)

正如其他人所说,接口只定义了类的结构。它是实现它的类的合同,如果你选择使用它,那么你还必须包括这里定义的方法。因此,任何实现它的类都保证具有接口所具有的功能。

如果您需要在方法中包含代码,那么替代它将是一个抽象类。然后,您必须对其进行子类化以使其可用。

答案 3 :(得分:1)

如果是界面,我们只提供方法签名。但是,如果存在某些方法需要具体实现而其他方法只有方法签名的情况,请考虑使用创建抽象类。例如

public abstract class WorldsBestAbstractClass{
  public void favoriteMethod(int greatValue){
        System.out.println("Thanks for the smile");
    }

  public abstract void nextFavoriteMethod(int smallValue);
}

答案 4 :(得分:0)

你应该

public interface WorldsBestInterface {
   void favoriteMethod(int greatValue);  // no body, just declaration
}
相关问题