JDK, JRE and JVM
तीन मुख्य हिस्से
Java समझने को, आपको तीन नाम चाहिए: JVM, JRE और JDK। ये एक जैसे सुनाई देते हैं पर अलग काम करते हैं। संक्षेप में: JVM आपका code चलाता है, JRE आपको Java चलाने देता है, और JDK आपको Java लिखने देता है। ये एक-दूसरे के अंदर nested हैं।
JVM — engine
Java Virtual Machine वो engine है जो Java bytecode (आपके code का compiled रूप) चलाता है। यह bytecode पढ़कर आपके device पर execute करता है। चूँकि हर operating system का अपना JVM है, वही bytecode Windows, Mac और Linux पर चलता है — "write once, run anywhere" का दिल।
JRE — Java चलाने को
Java Runtime Environment वो सब है जो Java program चलाने को चाहिए। इसमें JVM और आपके program द्वारा इस्तेमाल standard libraries शामिल हैं। अगर आप सिर्फ़ तैयार Java apps चलाना चाहते हैं और लिखना नहीं, JRE काफ़ी है।
JDK — Java लिखने को
Java Development Kit वो सब है जो Java लिखने और compile करने को चाहिए। इसमें JRE और developer tools शामिल हैं — सबसे ज़रूरी compiler javac, जो आपके .java code को bytecode में बदलता है। सीखने वाले और developers JDK install करते हैं।
javac Hello.java // JDK का compiler bytecode बनाता है java Hello // JRE का JVM उसे चलाता है
ये साथ कैसे जुड़ते हैं
इन्हें डिब्बों के अंदर डिब्बे समझिए:
JDK (लिखो + compile + चलाओ)
└── JRE (चलाओ)
└── JVM (bytecode execute करो)
JDK सबसे बड़ा है — इसमें JRE है, जिसमें JVM है। तो JDK install करना अपने-आप आपको JRE और JVM भी देता है।
त्वरित तुलना
| हिस्सा | मक़सद | इसमें | किसे चाहिए |
|---|---|---|---|
| JVM | Bytecode चलाता है | Engine | सबको (JRE के अंदर) |
| JRE | Java apps चलाना | JVM + libraries | Java चलाने वाले |
| JDK | लिखना + compile | JRE + tools | Developers, सीखने वाले |
आम गलतियाँ
- Code करने को सिर्फ़ JRE install करना।
javacसे compile करने को JDK चाहिए। - इन्हें जोड़ने वाले अलग downloads समझना। JDK में पहले से JRE और JVM हैं।
- JVM को पूरा Java समझना। JVM बस execution engine है।
- Bytecode के JVM बिना चलने की उम्मीद। Java चलाने को हर device को JVM चाहिए।
सारांश
- JVM Java bytecode चलाता है और Java को platform-independent बनाता है।
- JRE = JVM + libraries, Java programs चलाने को काफ़ी।
- JDK = JRE + tools (जैसे compiler), Java लिखने को चाहिए।
- ये nest होते हैं: JDK में JRE में JVM।
- Development को तीनों पाने को JDK install कीजिए।
आगे, JDK set कीजिए Java setup guide में, या अपना पहला program लिखिए Hello World में।
