如何在 Java 中创建不可变类?

2025年3月22日 | 阅读1分钟

有许多不可变类,如 String、Boolean、Byte、Short、Integer、Long、Float、Double 等。简而言之,所有包装类和 String 类都是不可变的。我们也可以通过创建具有 final 数据成员的 final 类来创建不可变类,如下面的示例所示。

创建不可变类的示例

在此示例中,我们创建了一个名为 Employee 的 final 类。它有一个 final 数据成员、一个带参数的构造函数和一个 getter 方法。

ImmutableDemo.java

输出

Pancard Number: ABC123

上面的类是不可变的,因为

  • 类的实例变量是 final,即我们在创建对象后无法更改其值。
  • 该类是 final,因此我们无法创建子类。
  • 没有 setter 方法,即我们没有选项来更改实例变量的值。

这些要点使该类成为不可变的。