为什么将实现的接口方法声明为public?

kar*_*olu 3 java oop interface object

我刚刚开始学习java,当我遇到界面时,我看到了以下代码:

interface Callback {
   void callback(int param);
}
Run Code Online (Sandbox Code Playgroud)
class Client implements Callback {
   public void callback(int p) {
   }
}
Run Code Online (Sandbox Code Playgroud)

为什么将实现的接口方法声明为public

Pet*_*rey 10

接口方法的默认修饰符是 public abstract

类方法的默认修饰符是package-local.这些不一样,并且您不能使用包本地方法覆盖公共方法.您可以使用非抽象方法覆盖抽象方法.

您必须公开您的类方法,即使您不必将其放在界面中.