पहले, आइए निम्नलिखित शर्तों के बारे में स्पष्ट विचार करें
JavacJava Compiler है - अपने Java कोड को Bytecode में संकलित करता है
JVMजावा वर्चुअल मशीन है - मूल मशीन कोड में रनटेक / इंटरप्रिट्स / ट्रांसलेट बाईटकोड
JITबस टाइम इन-कंपाइलर में है - मूल रूप से निष्पादित करने से पहले रनटाइम पर मशीन कोड को दिए गए बायटेकोड अनुदेश अनुक्रम संकलित करता है। प्रदर्शन में भारी अनुकूलन करना मुख्य उद्देश्य है।
तो अब, चलिए आपके सवालों के जवाब ढूंढते हैं ..
1) JVM: is it a compiler or an interpreter? - उत्तर: दुभाषिया
2) what about JIT compiler that exist inside the JVM? - उत्तर: यदि आप इस उत्तर को पूरी तरह से पढ़ते हैं, तो आप शायद इसे अभी जानते हैं
3) what exactly is the JVM? - उत्तर:
- JVM एक वर्चुअल प्लेटफॉर्म है जो आपकी रैम पर रहता है
- इसका घटक, क्लास लोडर
.class फ़ाइल को रैम में लोड करता है
- बाइट कोड सत्यापनकर्ता JVM की जाँच में घटक अगर वहाँ अपने कोड में किसी भी उपयोग प्रतिबंध उल्लंघन कर रहे हैं। (यह सिद्धांत कारणों में से एक है कि जावा सुरक्षित क्यों है)
- इसके बाद, एक्ज़ेक्यूशन इंजन कंपोनेंट बायटेकोड को एक्जीक्यूटेबल मशीन कोड में बदल देता है
आशा है कि इसने आपकी मदद की ..