用于创建不可变类的 Java 程序
要理解此示例,您应该具备以下 Java 编程的知识:
Java 不可变类
在 Java 中,当我们创建一个不可变类的对象时,我们不能改变它的值。例如, String
是一个不可变的类。因此,一旦创建,我们就无法更改字符串的内容。
此外,我们还可以创建自己的自定义不可变类。要创建一个不可变的类,以下是我们需要做的来:
- 将类声明为
final
。这样的类不能扩展 - 所有的类成员都应该是
private
, 这样他们不能在类外访问 - 不应包含任何 setter 方法来更改类成员的值
- setter 方法应该返回类成员的副本
- 类成员仅使用构造函数初始化
示例:创建不可变类的 Java 程序
// class is declared final
final class Immutable {
// private class members
private String name;
private int date;
Immutable(String name, int date) {
// class members are initialized using constructor
this.name = name;
this.date = date;
}
// getter method returns the copy of class members
public String getName() {
return name;
}
public int getDate() {
return date;
}
}
public class Main {
public static void main(String[] args) {
// create object of Immutable
Immutable obj = new Immutable("Program", 2011);
System.out.println("Name: " + obj.getName());
System.out.println("Date: " + obj.getDate());
}
}
输出
Name: Program
Date: 2011
在上面的例子中,我们创建了一个名为 Immutable
的不可变类。