首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Java中从抽象类调用子类构造函数

在Java中从抽象类调用子类构造函数
EN

Stack Overflow用户
提问于 2009-05-21 07:58:37
回答 9查看 10.6K关注 0票数 6
代码语言:javascript
运行
复制
public abstract class Parent {

    private Parent peer;

    public Parent() {
        peer = new ??????("to call overloaded constructor");
    }

    public Parent(String someString) {
    }

}

public class Child1 extends parent {

}

public class Child2 extends parent {

}

当我构造一个对等实例时,我希望自动构造一个同样属于Child1类型的“Child1”,并将其存储在peer属性中。对于类型为Child2的对等体,Child2也是如此。

问题是,在父类中的peer属性的分配上。我不能通过调用new Child1()来构造一个新的子类,因为那样对Child2就不起作用了。我该怎么做呢?有没有一个关键字可以用来指代这个子类?像new self()这样的东西

EN

Stack Overflow用户

发布于 2009-05-21 13:48:54

我建议用工厂模式来代替这整个事情,在工厂模式中,你可以完全控制添加了什么,而不需要在构造器中做。

票数 0
EN
查看全部 9 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/891824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档