我认为这是一个易于搜索的问题,但我什么也没发现。在以下代码中:
public class ParentClass {
public static interface InterfaceStatic {
}
public interface InterfaceNotStatic
{
}
}
您能描述InterfaceNotStatic
和InterfaceStatic
之间的区别吗?我知道相同的语法对于嵌套类意味着什么,但是由于接口不包含任何值,因此static
的目的使我难以理解。
答案 0 :(得分:0)
两个声明都相同。 static
修饰符在这种情况下是多余的。
成员接口是隐式静态的(第9.1.1节)。允许成员接口的声明多余地指定static修饰符。
答案 1 :(得分:0)
静态内部接口和内部接口相同,所有访问规则与内部静态类相同。因此,仅当您有权访问其父类/接口时,才能访问内部接口。在下面的情况下,您将只能从接口A的包访问接口B,因为接口A具有默认的访问修饰符。顺便说一句:接口B可以是静态的,也可以不是静态的。