सवाल पहली बार मूर्खतापूर्ण लगता है, लेकिन शायद यह बिल्कुल नहीं है।जावा वास्तव में क्या है?
जावा जावा भाषा नहीं है, ज्यादातर लोगों को पता है, कि, जब से तुम lots of other langauges स्काला या ग्रूवी
की तरह साथ जावा प्रोग्राम कर सकते हैं जावा एक ठोस वी एम कार्यान्वयन के बाद से वहाँ अन्य कार्यान्वयन सारे हैं नहीं है न केवल सन, माइक्रोसॉफ्ट या आईबीएम।
जावा क्लास फ्रेमवर्क नहीं है क्योंकि कई कार्यान्वयन इच्छाओं पर कक्षाओं को जोड़ या छोड़ देते हैं।
यह भी है कि एक आम वीएम विनिर्देश या यहाँ तक कि जावा बाईटकोड प्रयोग किया जाता है नहीं किया जाना चाहिए, को देखने के Dalvik VM
हो सकता है कि यह सिर्फ सिद्धांतों वे साझा करते हैं, जो कुछ भी यह हो सकता है का एक सेट है। यह निश्चित रूप से "एक बार लिखें, हर जगह चलाएं" नहीं है क्योंकि यह कम से कम दलविक और माइक्रोसॉफ्ट वीएम/जे # के मामले में नहीं है।
तो सवाल यह है कि जावा वास्तव में क्या है? क्या एक सटीक परिभाषा भी है?
संपादित करें बहुत से लोगों की राय है कि जावा केवल प्रोग्रामिंग भाषा का मतलब है। तो एक जावा-सक्षम मोबाइल फोन एक फोन होना चाहिए जो उपयोगकर्ता को जावा भाषा के साथ बनाए गए वर्ग फ़ाइलों से युक्त कार्यक्रमों का उपयोग करने में सक्षम बनाता है। यदि यह सच होगा, जावा वर्चुअल मशीन/जावा रनटाइम पर्यावरण/जावा विकास किट केवल जावा के लिए बनाई जाएगी और अन्य जेवीएम भाषाओं में उनके स्वयं के संबंधित xvm/xre/xdk होगा।
+1 निश्चित रूप से कोई मूर्ख सवाल नहीं है। – helpermethod
जहां तक कोई सामान्य वीएम स्पेक नहीं है, यह असत्य है क्योंकि मैंने एंड्रज के जवाब पर अपनी टिप्पणी में इसे लिंक किया है। दल्विक वीएम एक जेवीएम होने का दावा नहीं कर रहा है। (अनुमोदित ओरेकल वर्तमान में इस बिंदु पर Google पर मुकदमा कर रहा है।) – Poindexter
http://www.jwz.org/doc/java.html: तथ्य यह है कि चार 'पूरी तरह से अलग-अलग चीजें हैं जो' जावा 'नाम से जाती हैं। ': एक भाषा; एक विशाल वर्ग पुस्तकालय; एक वर्चुअल मशीन; एक सुरक्षा मॉडल। –