Tag: 最后的

超types构造函数被调用之前不能引用“X”,其中x是最后一个variables

考虑下面的Java类声明: public class Test { private final int defaultValue = 10; private int var; public Test() { this(defaultValue); // <– Compiler error: cannot reference defaultValue before supertype constructor has been called. } public Test(int i) { var = i; } } 编译器不会编译,抱怨上面突出显示的那一行。 为什么这个错误发生,什么是最好的解决方法?

一个不可变对象的所有属性必须是最终的吗?

必须不可变的对象的所有属性是final ? 据我所知没有。 但我不知道,我是否正确。