2010-12-16 11 views
6

मैं कीजावा: प्रतिबिंब (कार्यावधि में) (एनोटेशन प्रसंस्करण पर) मिरर

  • प्रतिबिंब अवधारणाओं के बीच सामान्य अंतर को समझने बनाम, और
  • (क्रमClass, Method, Field, Annotation, ... का उपयोग करने में किया जाता है) मिररिंग (एनोटेशन प्रोसेसिंगTypeMirror, TypeElement, ... का उपयोग करके किया गया)।

लेकिन क्या कोई कृपया दो अवधारणाओं की गहराई से तुलना कर सकता है (या मुझे संसाधन के लिए इंगित करें, जहां यह किया जाता है)?

उदाहरण है, जो अवधारणा जानकारी है कि अन्य प्रदान नहीं करता है कि किस प्रकार प्रदान करता है के लिए ...

धन्यवाद।

उत्तर

3
  • प्रतिबिंब कक्षाएं एक चल JVM में वस्तुओं की कक्षाओं का प्रतिनिधित्व किया जाता है। प्रतिबिंब एक बहुत पुरानी अवधारणा है जो बहुत शुरुआत से जावा में मौजूद है। इस प्रकार, यह कुछ क्षेत्रों में थोड़ा सा घबराहट है, जिसे नई भाषा संरचनाओं (विशेष रूप से जेनेरिक) को समायोजित करने के लिए बढ़ाया गया है।
  • javax.lang.model में कक्षाएं जावा स्रोत कोड के साथ काम करने के लिए उपयोग की जाती हैं। जेनरिक्स पहले से मौजूद होने पर उन्हें डिजाइन किया गया था और उन्हें अधिक व्यापक रूप से समर्थन (और करना) कर सकते हैं, क्योंकि टाइप एरर होता है।
+0

धन्यवाद। लेकिन, जैसा कि मैंने उल्लेख किया है, सामान्य अवधारणाएं जानी जाती हैं, और मैं गहन विश्लेषण की उम्मीद कर रहा था। बीटीडब्ल्यू, मुझे लगता है कि जेनरिक्स का समर्थन करने के लिए प्रतिबिंब बढ़ाया गया है, यह गलत है, जैसा कि आपने स्वयं उल्लेख किया है, वे रनटाइम के दौरान मिटा दिए जाते हैं। –

+0

ओह, मैं देख रहा हूं कि java.lang.reflect जेनेरिक के लिए बढ़ाया गया था, आप संभावित 'java.lang.reflect.TypeVariable' का जिक्र कर रहे हैं। हम्म, कभी इसका इस्तेमाल नहीं किया, खुद को इसके बारे में सूचित करेगा ... –

+2

@ java.is.for.desktop: ऑब्जेक्ट्स के प्रकार पैरामीटर मिटा दिए जाते हैं, लेकिन फ़ील्ड, विधि और क्लास परिभाषाओं में टाइप पैरामीटर नहीं हैं। –

0

मुझे लगता है कि आपको this paper में उत्तर मिलेगा।

+0

पेपर के लिए धन्यवाद लेकिन यह पढ़ने के लिए वास्तव में कठिन है क्योंकि यह शोध दर्शकों के लिए है। यह बहुत अच्छा होगा अगर आप तकनीकी परिप्रेक्ष्य से संक्षेप में इसका वर्णन कर सकते हैं। –

संबंधित मुद्दे