11
하나의 Java 객체를 JRuby의 다른 Java 클래스로 명시 적으로 캐스팅 할 수있는 방법이 있습니까?JRuby의 객체 캐스팅
때로는 JRuby에서 SomeJavaClass#aMethod(MyClass)
이 아닌 SomeJavaClass#aMethod(MySuperClass)
을 호출 할 수 있기를 원합니다.
someJavaObject.aMethod((MySuperClass) myObj);
을하지만 난 JRuby를에서 해당 작업을 수행하는 그런 #cast
루비 방법 또는 아무것도 표시되지 않았다
, 나는이 작업을 수행 할 것입니다.
Casting Java Objects From JRuby 질문은 일반적인 경우에 대한 대답이 부족하므로 질문을 다시하고 있습니다.
프리미티브가 아닌 클래스로 캐스팅하려는 경우 전체 계층 구조를 사용해야한다고 생각하면 유용하다고 생각합니다. 그래서,'obj'를'ij.text.TextWindow' 클래스에 던지려면'obj.to_java (Java :: Ij :: text :: TextWindow)'라고 써야합니다. – gregoltsov