我们知道final
关键字创建了对对象的常量引用。例如:
final Object object = new Object();
但是,在这种情况下,只有对对象的引用是固定的,在程序的执行运行时不能更改。我仍然可以在该对象上调用 setter 方法并更改其数据成员的值。有没有办法可以在 Java 中防止这种情况(相当于 C++ 中的 const )?
我理解一种方法,我不应该为这个对象类定义设置器,或者应该只允许设置一次值,但是如果我想将此对象作为参数传递给函数并且不希望该函数更改此对象的值怎么办?数据成员。我可能仍想更改函数之外的值。
在这种情况下,函数原型应该是什么?