X 实现 X — 这意味着什么?



我注意到写是完全合法的

class X implements X {
...
}

但我不清楚语义。 它实际上做了什么? 我希望它的意思是"X 是一个类的名称,但我们将它用作接口",但我注意到你可以这样写:

class X  {
...
}
interface Y extends X {
}

这意味着implements X没有添加它。 那么它增加了什么呢?

它什么也做不了。它告诉编译器检查类 X 是否实现了类 X 中的所有内容,这当然永远是正确的。

最新更新