Scala:在Scala中使用来自Java的多个构造函数
我想在Scala中使用一个Jar,它是用Java编写的
有些类具有多个构造函数,例如:
public LabeledDock(Parent<? super Labeled> parent, int index, Class<?> subtype){}
及
public LabeledDock(Parent<? super Labeled> parent, Class<?> subtype)
第一个构造函数有3个输入,第二个只有2个输入
如果我想以这种方式在Scala中使用这些构造函数:
val button = new LabeledDock(scene.asParent(), classOf[Button])
Scala告诉我,“对重载定义的不明确引用”
如果我使用
val button = new LabeledDock(scene.asParent(), 0, classOf[Button])
一切正常。 因此,我认为对于第一个变量声明,Scala不知道应该使用哪个构造函数,因为它们彼此相似。如何使用只有2个输入的构造函数,而不是添加第三个输入
谢谢你的帮助
# 1 楼答案
现在,在同事的帮助下,我解决了这个问题
而不是
我必须使用
有了这个,效果很好