我有一个Employee带有两个具体子类的抽象类,MinorEmployee并且AdultEmployee. 我知道如何在Employee实例化具体子类的实例中创建静态工厂方法:
public abstract class Employee() {
public static Employee create(LocalTime birthdate) {
if (/* omitted */) {
return new MinorEmployee();
} else {
return new AdultEmployee();
}
}
}
Java中有没有办法防止同一个包中的调用者直接实例化 a MinorEmployeeor AdultEmployee?
我不能将他们的构造函数设为私有,或者Employee无法访问它们。我也不想将它们嵌套在Employee.
皈依舞
尚方宝剑之说
holdtom
相关分类