Immutable模式中存在着确保实例状态不发生改变的类(immutable类)。在访问这些实例时并不需要执行耗时的互斥处理,能提高程序性能。
示例
Person.java
1 | public class Person { |
Main.java
1 | public class Main { |
PrintPersonThread.java
1 | public class PrintPersonThread extends Thread { |
登场角色
Immutable(不可变的)
Immutable角色是一个类,在这个角色中,字段的值不可以修改,也不存在修改字段内容的方法。Immutable角色的实例被创建后,状态将不再发生变化。这时,无需对Immutable角色应用Single Threaded Execution模式。也就是说,无需将Immutable角色的方法声明为synchronized。在示例程序中,由Person类扮演此角色。