首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java -接口

Java -接口
EN

Stack Overflow用户
提问于 2010-03-21 17:23:10
回答 4查看 318关注 0票数 3

为什么接口不能声明为静态接口?

EN

回答 4

Stack Overflow用户

发布于 2010-03-21 17:29:41

把界面想象成一张蓝图。没有什么具体的东西。如果一个类遵循(继承)这个接口,那么它只是一个类必须实现的蓝图。

Java (iirc)本身没有“静态”类的概念,也就是说,“静态”不像在C#中那样是类声明中的关键字。相反,静态类是只由静态成员和方法组成的类。

正如您可能知道的,静态成员和静态方法属于类,而不是实例。

由于接口只是一个蓝图,而不是具体的,所以“静态”接口是没有意义的。

需要注意的一点是内部类。

在类声明中,您可以定义一个静态接口,但我假设它不做任何事情。

票数 6
EN

Stack Overflow用户

发布于 2010-03-21 17:25:02

首先,因为它没有任何意义。静态接口与非静态接口有何不同?

其次,他们可以:

代码语言:javascript
复制
public class SomeClass {
    static interface StaticInterface {
    }
}
票数 2
EN

Stack Overflow用户

发布于 2010-03-21 17:31:08

如果您指的是接口本身:因为没有任何有用的东西可以用static interface表示

如果您指的是接口方法:因为在Java中,静态方法是类的属性,不能被覆盖或以多态方式调用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2486512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档