java - 调用带条件的构造函数

标签 java constructor

<分区>

我想做这样的事情:

if (condition)
    super(foo.class);
else
    super(bar.class);

但是 super 构造函数必须是构造函数中的第一个。无论如何都可以这样做吗?

最佳答案

假设您在两种情况下都调用了同一个超构造函数,只是传入了不同的参数,您可以只使用条件运算符:

super(condition ? Foo.class : Bar.class);

关于java - 调用带条件的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23423957/

相关文章:

java - 事件总线 Guava 有一个无界队列

Java默认构造函数没有初始化

java - 如何在 Java 中执行 shell 命令?

java - kafka的metrics.num.samples设置如何影响records-lag-max的计算方式?

java - 是否可以指定多个预期响应类型?

java - 服务正在运行但线程已停止

c++ - 静态类数据成员和构造函数

c++ - 我有一个类对象作为另一个类的成员,如何初始化为安全的空状态?

c#构造函数默认参数的正确方式

javascript - 构造函数原型(prototype)循环引用 JavaScript