接口本身可以是包私有的,而不是其中的方法。您可以定义一个只能在其定义的包中使用(按名称)的
public接口,但是其方法类似于所有接口方法。如果类实现该接口,则其定义的方法必须为
public。这里的关键是接口
类型 在包外部不可见,而不是方法。文档并不正确,因为使用接口中定义的方法与使用接口本身不同。
还应注意,在定义接口时,
public在方法定义之前不添加内容不会更改任何内容,因为方法都是隐式的
public。
如果您已实现接口的类本身是程序包私有的,
public则接口方法的强弱显然不是问题。如果单继承问题不会对您造成影响,您当然也可以使用抽象类而不是接口:
abstract class Whatever { abstract void foo(); abstract void bar();}


