2013-08-20 2 views
2

Java로 작성된 Jar를 스칼라에서 사용하려고합니다.스칼라 : 스칼라에서 Java의 여러 생성자 사용

예를 들어, 여러 constructores이 클래스가있다 :

public LabeledDock(Parent<? super Labeled> parent, Class<?> subtype) 

public LabeledDock(Parent<? super Labeled> parent, int index, Class<?> subtype){} 

그래서 생성자 제 3 개 입력, 제 2 전용 입력을 갖는다. 내가 그런 식으로 스칼라에서이 생성자를 사용하려면

:

val button = new LabeledDock(scene.asParent(), classOf[Button]) 

스칼라 알려줍니다이 내가 사용하는 경우

"오버로드 정의에 대한 모호한 참조"

val button = new LabeledDock(scene.asParent(), 0, classOf[Button]) 

모두 정상적으로 작동합니다. 그래서 첫 번째 변수 선언 스칼라 그들이 서로 사용해야하기 때문에 사용해야하는 생성자를 알 수 없다고 생각합니다. 세 번째 입력을 추가하는 대신 두 입력 만 사용하여 생성자를 어떻게 사용할 수 있습니까?

도움 주셔서 감사합니다.

+0

'LabeledDock'에 대한 생성자가 더 있습니까? – ziggystar

+0

예, 몇 가지 더 많은 생성자가 있습니다. 두 개의 매개 변수가있는 생성자를 사용하고 다른 생성자와 유사하면 (입력 매개 변수와 관련하여) 문제가 항상 발생합니다. – AKR

+0

생성자의 전체 목록을 제공 할 수 있습니까? – ziggystar

답변

0

지금 직장 동료의 도움을 받아이 문제를 해결했습니다. 대신

classOf[Button] 

내가이와

classOf[Button].asInstanceOf[Class[_]] 

그것을 잘 작동을 사용합니다.

관련 문제