में ऑब्जेक्ट कास्टिंग करना क्या कोई तरीका है कि मैं एक जावा ऑब्जेक्ट को जेआरबी से किसी अन्य जावा क्लास में स्पष्ट रूप से डाला जा सकता हूं?JRuby
कभी-कभी मैं SomeJavaClass#aMethod(MySuperClass)
को SomeJavaClass#aMethod(MyClass)
से JRuby से आमंत्रित करने में सक्षम होना चाहता हूं।
जावा से, मैं यह कर चाहते हैं:
someJavaObject.aMethod((MySuperClass) myObj);
लेकिन मैं एक #cast
माणिक विधि या ऐसा कुछ JRuby से बराबर करने के लिए नहीं देखा था।
नोट कि प्रश्न Casting Java Objects From JRuby सामान्य मामले के लिए उत्तर नहीं है, इसलिए मैं सवाल फिर से पूछ रहा हूं।
मुझे लगता है कि यह जोड़ना उपयोगी होगा कि यदि आप गैर-आदिम वर्गों में जाने की कोशिश कर रहे हैं, तो आपको पूर्ण पदानुक्रम का उपयोग करना चाहिए। तो, कहें, 'obj' को' ij.text.TextWindow' वर्ग में डालने के लिए, आपको 'obj.to_java (जावा :: Ij :: text :: TextWindow) लिखना होगा। – gregoltsov