C++ vs Java:
C++ प्रोग्रामिंग लैंग्वेज और Java में कई अंतर और समानताएं हैं। C++ और Java के बीच शीर्ष अंतरों की एक सूची नीचे दी गई है:
| Comparison Index | C++ | JAVA |
|---|---|---|
| Platform-independent | C++ platform-dependent Language है | Java platform-independent Language है |
| Mainly used for | C++ मुख्य रूप से System Programming के लिए Use किया जाता है। | जावा मुख्य रूप से Application Programming के लिए use किया जाता है। यह Window Based, Web Based, Enterprise और mobile Application में उपयोग किया जाता है। |
| Design Goal | C++ को सिस्टम और एप्लिकेशन प्रोग्रामिंग के लिए डिजाइन किया गया था। यह C प्रोग्रामिंग भाषा का एक विस्तार था | जावा को प्रिंटिंग सिस्टम के लिए एक interpreter के रूप में डिजाइन और बनाया गया था लेकिन बाद में एक समर्थन नेटवर्क कंप्यूटिंग के रूप में विस्तारित किया गया। इसे उपयोग में आसान और व्यापक दर्शकों के लिए सुलभ होने के लिए डिज़ाइन किया गया था। |
| Goto | C++ goto स्टेटमेंट को Support करता है। | जावा goto स्टेटमेंट को Support नहीं करता है। |
| Multiple inheritance | C++ multiple Inheritance को Support करता है। | Java multiple Inheritance को Support नहीं करता है। |
| Operator Overloading | C++ Operator overloading को Support करता है। | Java Operator overloading को Support नहीं करता है। |
| Pointers | C++ Pointers को Support करता है। आप C++ में एक पॉइंटर प्रोग्राम लिख सकते हैं। | जावा internally Pointers को Support करता है। हालाँकि, आप जावा में पॉइंटर प्रोग्राम नहीं लिख सकते हैं। इसका मतलब है कि जावा ने जावा में पॉइंटर सपोर्ट को प्रतिबंधित कर दिया है। |
| Compiler and Interpreter | C++ केवल Compiler का उपयोग करता है। C++ को Compiler का उपयोग करके Compile और run किया जाता है जो Source Code को मशीन कोड में Convert करता है, इसलिए C++ Platform dependent Language है। | जावा Compiler और Interpreter दोनों का उपयोग करता है। जावा Source Code Compile time पर बाइटकोड में परिवर्तित हो जाता है। Interpreter रनटाइम पर इस बाइटकोड को execute करता है और आउटपुट generate करता है। जावा interpret की जाती है इसलिए यह platform independent है। |
| Call by Value and Call by reference | C++ Call by Value और Call By reference दोनों को Support करता है। | जावा केवल Call by Value को Support करता है। जावा में Call by Reference नहीं है। |
| Structure and Union | C++ Structure And Union को Support करता है। | Java Structure And Union को Support नहीं करता है। |
| Thread Support | C++ में Threads के लिए बिल्ट-इन सपोर्ट नहीं है। यह थ्रेड सपोर्ट के लिए थर्ड-पार्टी लाइब्रेरी पर निर्भर करता है। | जावा में बिल्ट-इन थ्रेड सपोर्ट है। |
| Documentation comment | C++ Documentation comments को Support नहीं करता है। | जावा Source Code के लिए comments बनाने के लिए (/** … */) का समर्थन करता है। |
| Virtual Keyword | C++ Virtual Keyword को Support करता है ताकि हम यह तय कर सकें कि किसी फ़ंक्शन को ओवरराइड करना है या नहीं। | जावा में कोई Virtual keyword नहीं है। हम Default रूप से सभी Non Static Methods को ओवरराइड कर सकते हैं। |
| unsigned right shift >>> | C++ >>> को Support नहीं करता है। | जावा unsigned राइट शिफ्ट >>> ऑपरेटर का समर्थन करता है जो नकारात्मक संख्याओं के लिए शीर्ष पर शून्य भरता है। सकारात्मक संख्याओं के लिए, यह >> ऑपरेटर की तरह ही काम करता है। |
| Inheritance Tree | C++ हमेशा एक नया Inheritance tree बनाता है। | जावा हमेशा Single Inheritance Tree का उपयोग करता है क्योंकि जावा में सभी Classes Object Class के Child हैं। Object class जावा में Inheritance Tree की Root है। |
| Hardware | C++ is nearer to hardware. | जावा हार्डवेयर के साथ इतना इंटरेक्टिव नहीं है। |
| Object-oriented | C++ एक Object-oriented Language है। हालाँकि, C भाषा में, Single Root Hierarchy संभव नहीं है। | जावा भी एक Object-oriented Language है। हालाँकि, सब कुछ (मौलिक प्रकारों को छोड़कर) जावा में एक objact है। यह एक Single Root Hierarchy है क्योंकि सब कुछ java.lang.Object से प्राप्त होता है। |

Welcome to HindiTutorials, your go-to platform for learning and mastering concepts in Hindi! Our mission is to make education accessible and simple for everyone by providing high-quality tutorials on programming, technology, and various other topics.