If you have already register Login here.
Java and C++ support object oriented programming, yet there are differences between them. To begin with, Java is a pure object oriented programming language; therefore, everything is an object in Java (single root hierarchy as everything gets derived from java.lang.Object). On the contrary, in C++ there is no such root hierarchy. C++ supports both procedural and object oriented programming; therefore, it is called a hybrid language.
There are many differences and similarities between C++ programming language and Java. A list of top differences between C++ and Java are given below:
Comparison Index | C++ | Java |
---|---|---|
Platform-independent | C++ is platform-dependent. | Java is platform-independent. |
Mainly used for | C++ is mainly used for system programming. | Java is mainly used for application programming. It is widely used in window, web-based, enterprise and mobile applications. |
Goto | C++ supports goto statement. | Java doesnt support goto statement. |
Multiple inheritance | C++ supports multiple inheritance. | Java doesnt support multiple inheritance through class. It can be achieved by interfaces in java. |
Operator Overloading | C++ supports operator overloading. | Java doesnt support operator overloading. |
Pointers | C++ supports pointers. You can write pointer program in C++. | Java supports pointer internally. But you cant write the pointer program in java. It means java has restricted pointer support in java. |
Compiler and Interpreter | C++ uses compiler only. | Java uses compiler and interpreter both. |
Call by Value and Call by reference | C++ supports both call by value and call by reference. | Java supports call by value only. There is no call by reference in java. |
Structure and Union | C++ supports structures and unions. | Java doesnt support structures and unions. |
Thread Support | C++ doesnt have built-in support for threads. It relies on third-party libraries for thread support. | Java has built-in thread support. |
Documentation comment | C++ doesnt support documentation comment. | Java supports documentation comment (/** ... */) to create documentation for java source code. |
Virtual Keyword | C++ supports virtual keyword so that we can decide whether or not override a function. | Java has no virtual keyword. We can override all non-static methods by default. In other words, non-static methods are virtual by default. |
unsigned right shift >>> | C++ doesnt support >>> operator. | Java supports unsigned right shift >>> operator that fills zero at the top for the negative numbers. For positive numbers, it works same like >> operator. |
Inheritance Tree | C++ creates a new inheritance tree always. | Java uses single inheritance tree always because all classes are the child of Object class in java. Object class is the ro |
© 2025 Easy To Learning. All Rights Reserved | Design by Easy To Learning