在Java中,我们使用final关键字和变量来指定它的值不被改变。但是我发现你可以改变类的构造函数/方法中的值。再次,如果变量是static那么这是一个编译错误。这里是代码:
import java.util.List;
private final List foo;现在改变变量为static:
private static final List foo;
下面是一个非常简单的C++11程序,它测试了如何使用final关键字来防止类被子类化:{ Base() {}/temp.cpp:10:28: error: base 'Base' is marked 'final'
class Derived : public Base<int> {};/temp.cpp:1:29: not