Ryan Delucchi टिप्पणी # 3 में here पूछा 'Tom Hawtin रों जवाब देने के लिए:क्लास.न्यू इंस्टेंस() "बुराई" क्यों है?
क्यों है Class.newInstance() "" बुराई?
इस कोड को नमूना के जवाब में:
// Avoid Class.newInstance, for it is evil.
Constructor<? extends Runnable> ctor = runClass.getConstructor();
Runnable doRun = ctor.newInstance();
हां, तो क्यों यह बुराई है?
असल में इस प्रश्न के उत्तर देख रहे हैं: कोई इसे प्रतिबिंब के विभिन्न उपयोगों के बारे में कह सकता है ... न केवल कक्षा। नया इंस्टेंस()। तो यह वास्तव में एक सामान्य अवलोकन है कि "प्रतिबिंब संकलन-समय की जांच को हरा देता है" ... जो अक्सर प्रतिबिंब का बिंदु होता है। –
इन दिनों बच्चे, ओह हाँ वे "EVIL" शब्द के चारों ओर फेंकते हैं लेकिन उन्होंने कभी भी एक कोबोल या फोरट्रान कार्यक्रम नहीं देखा है! आप चाहते हैं कि "ईवीआईएल" 20 साल पुराना फोरट्रान प्रोग्राम देखें, जो परियोजना से परियोजना को टिंकर द्वारा सिमुलेशन पृष्ठभूमि के साथ पास किया गया था और कोई सीएस कभी भी प्रभावित नहीं होता! अब वह "EVIL!" – NoMoreZealots
यह भी देखें http://stackoverflow.com/q/36272566/3888450 –