我有一個斯卡拉類:實例化從Java Scala的類,並使用構造函數的默認參數
class Foo(val x:String = "default X", val y:String = "default Y")
我想從調用它的Java,但使用默認參數
傳null
不工作(其分配null
,如預期)
new Foo(null,null); //both are instantiated as null
這一招確實爲我工作,但它的醜陋,我不知道是否有更好的辦法:
斯卡拉
class Foo(val x:String = "default X", val y:String = "default Y") {
def this(x:Object) = this()
}
的Java
new Foo(null); //no matter what I pass it should work
不過,我想喜歡擺脫構造函數重載技巧,並使用0參數構造函數
這可能嗎?