【发布时间】:2013-09-21 11:17:14
【问题描述】:
我知道如何创建 immutable class 。我创建了以下 .
public class Employee {
private final int id;
private final String name;
private final int salary;
public Employee(int id, String name, int salary) {
this.id = id;
this.name = name;
this.salary = salary;
}
public int getId() {
return id;
}
public String getName() {
return name;
}
public int getSalary() {
return salary;
}
}
很少有文章还建议,你将你的类声明为final,甚至Effective JAVA书说“将你的方法标记为final,这样它们就不会被覆盖” 。但我不明白为什么我需要在类或setter 方法上使用final,当字段被声明为private 和final 时?
或者文章和 EFFECTIVE JAVA 建议另一种方法!!!
【问题讨论】:
标签: java string immutability