डाउनकास्टिंग का मतलब है बेस क्लास (या इंटरफेस) से सबक्लास या लीफ क्लास तक कास्टिंग।
यदि आप System.Object
किसी अन्य प्रकार से डाली जाती हैं, तो डाउनकास्ट का एक उदाहरण हो सकता है ।
डाउनकास्टिंग अलोकप्रिय है, शायद एक कोड गंध: ऑब्जेक्ट ओरिएंटेड सिद्धांत को पसंद करना है, उदाहरण के लिए, डाउनकास्टिंग के बजाय आभासी या अमूर्त तरीकों को परिभाषित करना और कॉल करना।
- क्या, यदि कोई हो, डाउनकास्टिंग के लिए अच्छे और उचित उपयोग के मामले हैं? अर्थात्, किस परिस्थिति में यह कोड लिखना उचित है?
- यदि आपका उत्तर "कोई नहीं" है, तो डाउनकास्टिंग भाषा द्वारा समर्थित क्यों है?
ToString
); इसका अन्य उदाहरण "जावा कंटेनर" है क्योंकि जावा जेनरिक (जो कि # सी करता है) का समर्थन नहीं करता है। stackoverflow.com/questions/1524197/downcast-and-upcast कहते हैं कि डाउनकास्टिंग क्या है , लेकिन जब यह उपयुक्त हो तो उदाहरण के बिना ।
before Java had support for generics
नहीं है because Java doesn't support generics
। और बहुत अधिक ने आपको जवाब दिया - जब आप जिस प्रकार की प्रणाली के साथ काम कर रहे हैं वह बहुत अधिक प्रतिबंधात्मक है और आप इसे बदलने की स्थिति में नहीं हैं।