जब जावा कंपाइलर कक्षा को बाइटकोड में बदल देता है, तो इसे पहले मूल वर्ग को देखना चाहिए। ऐसा इसलिए है क्योंकि कक्षाओं का अंतर्निहित कार्यान्वयन माता-पिता वर्ग के बाइटकोड को इंगित करना है - जिसमें प्रासंगिक विधियां और फ़ील्ड हैं। फिर यह पॉइंटर्स में बाल वर्ग कार्यों के कोड में जोड़ता है - जिनमें से कुछ 'उपकरण' कीवर्ड द्वारा अनिवार्य हैं।
क्योंकि अभिभावक वर्ग को संकलित करने योग्य होना चाहिए, इसलिए यह आसान है कि संकलक आगे बढ़ता है कि वह वर्ग क्या है। इसके अलावा, आप केवल एक वर्ग का विस्तार कर सकते हैं लेकिन किसी भी इंटरफेस को लागू कर सकते हैं। संकलन समय चढ़ता है यदि विस्तारित कीवर्ड को किसी भी संख्या में लागू निर्देशों के बीच अंतःस्थापित किया जा सकता है। कंपाइलर्स देव समय को कम करने के लिए यथासंभव तेज़ी से विफल होना चाहते हैं, इसलिए यह विकल्प तार्किक है। इसके अलावा, यह आपको उसी कारण से कक्षा के बारे में स्पष्ट रूप से सोचने में मदद करता है।
स्रोत
2012-05-10 16:13:01
क्योंकि जावा जावा है। –
... क्योंकि इस तरह लेक्सर इसे जरूरी बनाता है? – Makoto
इस के लिए मुकदमा ओरेकल =) – 4lex1v