Computer Science, asked by islamdmw9217, 1 year ago

What are the differences between C++ and Java?

Answers

Answered by sarazeb8989
1

Difference Between Java and C++

Here, we are going to study 11 important factors of comparison between Java vs C++. Let’s discuss them one by one:

Pointers

Java: Java does not support pointers, templates, pointer overloading, unions, etc. The Java dialect promoters at first said “no pointers!” However, when numerous developers addressed how you can function without pointers, the promoters started saying “Confined pointers.” Java underpins what it calls “references.” References act a considerable measure like pointers in C++ dialects. Yet, you can’t perform number-crunching on pointers in Java. References have types, and they’re composed safe. These references can’t be deciphered as crude address and perilous change isn’t permitted.

C++: C++ does support pointers, structures, unions, templates, operator overloading, or pointers arithmetic.

Support Destructors

Java: Java doesn’t support destructors; it has an automatic garbage collection system.

C++: It supports destructors; it gets invoked when an object is destroyed.

Conditional Compilation and Inclusion

Java: It doesn’t support conditional compilation and inclusion.

C++: These are the major features of C++.

Thread Support

Java: It has built-in supports threads in Java. There is a thread class in Java, inherit to create a new thread override the run method.

C++: It has no built-in supports. It depends on third-party libraries.

Default Arguments

Java: Java does not support default arguments. There is no (::) in Java. The strategy definitions should dependably happen inside a class, so there is no requirement for scope determination there either.

C++: C++ supports default arguments. C++ has scope resolution (::), which utilize and characterize a strategy outside a class to get to a worldwide variable inside from the degree where a neighborhood variable additionally exists with a similar name.

Goto Statement

Java: There is no goto statement in Java. The keywords const and goto are reserved, even though they are not used.

C++: C++ has goto articulation. Nonetheless, it isn’t viewed as a great practice to a utilization of goto explanation.

Multiple Inheritances

Java: Java doesn’t provide multiple inheritances, at least not in the same sense that C++ does.

C++: C++ supports different inheritance. The keyword virtual utilize to determine ambiguities amid various legacy, if there is any.

Exception Handling

Java:  Exception handling is different because there are no destructors. In Java,  try/catch must define if the function declares that it may throw an exception.

C++: While in C++, you may exclude the attempt/get regardless of whether the capacity throws an exemption.

Method Overloading and Operator Overloading

Java: Java has method overloading but no operator overloading. The String class does use the + and += operators to concatenate strings and String expressions use automatic type conversion, but that’s a special built-in case.

C++: C++ supports both technique over-loading and administrator over-loading.

Documentation Comment

Java: Java has built-in support for documentation comments (/** … */); therefore, Java source files can contain their own documentation, which is read by a separate tool usually Java doc and reformat into HTML. This helps to keep documentation maintained in an easy way.

C++:  C++ does not support documentation remarks.

Platform Independent

Java: Java is interpreted for the most part and, hence, platform independent.

C++: C++ creates protest code, and a similar code may not keep running on various stages

Conclusion

In this tutorial, we learned about the basic differences in C++ and Java. We explore each factor of Java and C++. Furthermore, if you have any additional questions or comments, feel free to leave a note below!

Similar questions