您好,我需要帮助如何在Scala中使用两个构造函数进行转换。
replace(/&/g,'&')
答案 0 :(得分:1)
class Configure(private val config :Config) {
def this() = this(ConfigFactory.load())
def this(confFileName :String) = this(ConfigFactory.load(confFileName))
}
答案 1 :(得分:1)
在Scala中,通常会使用一个伴随对象来完成此操作:
class Configure private (config: Config) {
def configString(name: String) = config.getString(name)
}
case object Configure {
def apply(confFileName: String ) =
new Configure(ConfigFactory.load(confFileName))
def apply() =
new Configure(ConfigFactory.load())
}
这很好地将类的行为与创建类的不同方式分开。
[我重命名了getString
,因为在Scala中“获取器”通常不是以get
开头,它们只是要检索的值的名称。 ]