Java is a true and complete object oriented language. |
C++ is an extension of C with object oriented behavior. C++ is not a complete object oriented language as that of Java. |
Java does not provide template classes. |
C++ offers Template classes. |
Java supports multiple inheritance using interface. |
C++ achieves multiple inheritance by permitting classes to inherit from multiple classes. |
Java does not provide global variables. |
Global variables can be declared in C++. |
Java does not support pointers. |
C++ supports pointers. |
In Java, destruction of objects is performed in finalize method. |
In C++, destruction of objects is performed by destructor function. |
Java doesn’t provide header files. |
C++ has header files. |