gpt4 book ai didi

java - 内部类中的接口(interface)时出现编译错误

转载 作者:行者123 更新时间:2023-12-01 18:15:15 25 4
gpt4 key购买 nike

我想在内部类中声明一个接口(interface),它显示编译器错误消息“内部类不能有静态声明”。

public class Apple {       
//...

public class InnerApple{
//...

public interface InnerInterface{
//Error: inner classes cannot have static declarations
}
}
}

这是否意味着 Java 中的接口(interface)实际上是静态的?

我使用的是 Java 1.7。谢谢!!

最佳答案

接口(interface)始终是静态的 - 从某种意义上说,不能对另一个实例有任何依赖。

拥有两层内部声明是相当罕见的,但如果有意为之,我希望至少 InnerApple静态:

public class Apple {       
public static class InnerApple{

public interface InnerInterface{
//this does not cause an error
}
}
}

大多数情况下,内部类的关键字static被省略。如果是这样,这个类可能包含对周围实例的依赖关系(而不仅仅是像静态内部类那样依赖于该类)。

关于java - 内部类中的接口(interface)时出现编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30084952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com