1.immutable与mutable类的定义
mutable类: 定义比较简单,创建之后,该对象拥有可以更改其值/引用的方法
immutable类: immutable类是指这个类的实例一旦创建完成后,就不能改变其成员变量值,也就是不能改变对象的状态。首先,类需要声明为final,保证其不可以被继承,所有成员变量定义为private final,不提供改变成员变量的Mutators方法 ,通过构造器初始化成员变量,如果构造器传入了引用数据类型需要进行防御式拷贝。
2.Java中常见的mutable和immutable类
常见的immutable类
String: 一个String总是表示一个相同的字符串。由于String是immutable的,一旦创建,一个String类总是含有相同的值。想要改变值,java会创建一个新的String类。
基本类型及其封装对象类型: 基本类型:byte、short、int、long、float、double、c