【发布时间】:2014-03-26 00:14:40
【问题描述】:
我有一个扩展另一个类的类。在构造函数中,我传入了一堆参数,但现在我意识到我需要根据运行代码的对象传入不同的参数:
public searchPage(WebDriver driver, LoadableComponent<?> parent, Properties props) {
super(driver, parent, Boolean.FALSE, props,action.UK);
在此示例中,该操作使用枚举中的 UK 值,我的问题是如果我在另一个客户端上运行它,我可能需要调用 action.FR
有没有办法在构造函数中添加条件?例如,如果 prop 文件中的某些内容显示为 FR,则传递 action.FR
【问题讨论】:
-
定义两个不同的构造函数怎么样?将区分因子作为参数传递。
-
工厂函数?你可以把条件放在工厂里。不知道这是不是最好的选择,但这似乎很简单。
标签: java constructor conditional-statements extends super