我注意到写是完全合法的
class X implements X {
...
}
但我不清楚语义。 它实际上做了什么? 我希望它的意思是"X 是一个类的名称,但我们将它用作接口",但我注意到你可以这样写:
class X {
...
}
interface Y extends X {
}
这意味着implements X
没有添加它。 那么它增加了什么呢?
它什么也做不了。它告诉编译器检查类 X 是否实现了类 X 中的所有内容,这当然永远是正确的。