java – 为什么界面不能是最终的?

前端之家收集整理的这篇文章主要介绍了java – 为什么界面不能是最终的?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
JLS 2.13.1接口修饰符

An interface cannot be final,because the implementation of such a class could never be completed.

如果我可以在接口I中编写创建静态内部类,可以在其中提供实现,那么为什么会有这样的限制

interface Type {

    // Normal
    class Value {
        private Value() {
        }

        public void print() {
            System.out.println("Test");
        }
    }

    public final Value value = new Value();
}

解决方法

顺便说一句:首次定义此限制时,嵌套类不可用,所以问题可能就是为什么没有解除此限制.

最后一堂课不能有任何子课.仅使用接口来定义子类的方法被认为是最佳实践,因此两者是矛盾的.

您可以将接口用于其他事情

>注释
> javadocs
>常数
>仅定义嵌套类.

但这些都是接口的附带目的.

猜你在找的Java相关文章