<分区>
我想做这样的事情:
if (condition)
super(foo.class);
else
super(bar.class);
但是 super 构造函数必须是构造函数中的第一个。无论如何都可以这样做吗?
标签 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/