Java接口成员

Java接口成员,java,interface,implementation,Java,Interface,Implementation,在Java中,在接口的主体中,方法和变量必须声明为具有公共访问权限吗?如果是这样,在不使用“public”访问修饰符(即将访问保留为默认访问)的情况下声明接口访问可以获得什么 例如,从写作中可以得到什么 interface DefaultAccess { 相对于 public interface PublicAccess { ?接口方法是隐式的公共的,即使您没有这样声明它们 接口本身具有与类相同的规则。公共工程与往常一样,包私有(即没有修饰符)意味着接口只能由来自同一包的类使用。如果接口不是

在Java中,在接口的主体中,方法和变量必须声明为具有公共访问权限吗?如果是这样,在不使用“public”访问修饰符(即将访问保留为默认访问)的情况下声明接口访问可以获得什么

例如,从写作中可以得到什么

interface DefaultAccess {
相对于

public interface PublicAccess {

接口方法是隐式的
公共的
,即使您没有这样声明它们


接口本身具有与类相同的规则。公共工程与往常一样,包私有(即没有修饰符)意味着接口只能由来自同一包的类使用。

如果接口不是公共的,则不能在包含此接口的包之外访问它

这可能有助于您更好地理解它:

默认情况下,接口成员是公共的,但不带访问修饰符的接口只能在同一个包中访问。您的示例与您的问题不同。你是在问界面本身是公开的吗?或者你在问它的方法和领域?请注意,一个接口的所有成员都是公共的-您不能以任何其他方式拥有它们。谢谢大家。为了澄清,我得到的问题是:如果实现接口方法/变量的类方法始终是公共的,那么将接口本身声明为默认访问(即非公共访问)可以获得什么?根据查询,似乎将接口声明为非公共接口在技术上没有任何好处,因此我现在对这一点有了更好的理解。