जावा स्थिर नाम का समर्थन नहीं करता विस्तार करने के लिए सक्षम हो सकता है। एक विचार है कि किसी नए वर्गनाम के साथ प्रश्न में ऑब्जेक्ट को उपclass करना है (लेकिन कुछ साइड इफेक्ट्स/सीमाओं के कारण एक अच्छा विचार नहीं हो सकता है, उदाहरण के लिए आपके लक्षित वर्ग में अंतिम संशोधक हो सकता है। अगर स्पष्ट प्रकार की जांच हो तो कोड को अलग-अलग व्यवहार किया जा सकता है getClass()
या , आदि (नीचे एक अलग जवाब से अनुकूलित उदाहरण)
class MyApp {
public static void main(String[] args) {
ClassToRename parent_obj = new ClassToRename("Original class");
MyRenamedClass extended_obj_class_renamed = new MyRenamedClass("lol, the class was renamed");
// these two calls may be treated as the same
// * under certain conditions only *
parent_obj.originalFoo();
extended_obj_class_renamed.originalFoo();
}
private static class ClassToRename {
public ClassToRename(String strvar) {/*...*/}
public void originalFoo() {/*...*/}
}
private static class MyRenamedClass extends ClassToRename {
public MyRenamedClass(String strvar) {super(strvar);}
}
}
आप स्काला में ऐसा कर सकते हैं प्रयोग किया जाता है इस तरह:।। आयात java.util {ArrayList => JavaList} – bartektartanus