重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在创建状态后无法更改其状态的对象称为不可变对象。一个对象不可变的类称为不可变类。不变的对象可以由程序的不同区域共享而不用担心其状态改变。
专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!成都创新互联为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都网站建设、网站建设负责任的成都网站制作公司!
不可变对象本质上是线程安全的。
示例
以下代码创建了不可变类的示例。
public class IntWrapper {
private final int value;
public IntWrapper(int value) {
this.value = value;
}
public int getValue() {
return value;
}
}
下面显示如何创建IntWrapper类的对象:
IntWrapper wrapper = new IntWrapper(101);
在这一点上,wrapper对象保存101值,并且没有办法改变它。因此,IntWrapper类是一个不可变的类,它的对象是不可变的对象。
但是,最好将所有实例变量声明为final,以便Java编译器在编译期间强制执行不可变性。