有没有办法修改正在构造函数中构造的类?
public class A {
A() {
//if (condition) return object of type B
//else return A itself
}
}
public class B extends A { }
基本上我想使用基类构造函数作为工厂方法。在 Java 中可以吗?
最佳答案
不,如果你想这样做,你必须为 A
使用工厂方法。您的类的客户有权期望,如果他们执行 new A()
,他们将获得类 A
的对象,而不是其他对象。
关于java - Java Constructor 可以构造子类的对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1501922/