Similarities between Java and C++
Both are very successful and popular programming languages. Though there are many differences between the both, there are considerable similarities which are given as follows:
- Both C++ and Java supports Object Oriented Programming: OOPs is a modular approach, which allows the data to be applied within stipulated program area, It also provides the re-usability feature to develop productive logic, which means to give more emphasis on data. It supports classes and objects. OOPs features include:
- Inheritance: process by which objects of one class can link and share some common properties of objects from another class.
- Polymorphism: Allows us to perform a single action in different ways. It is the process of using a function for more than one purpose.
- Abstraction: It is the act of representing essential features without including the background details.
- Encapsulation.: Wrapping up of data and functions into a single unit.
- Inheritance: process by which objects of one class can link and share some common properties of objects from another class.
- They have similar syntax:
C++ Syntax:
CPP
#include& lt; iostream & gt; using namespace std; int main() { cout& lt; < " Hello World" ; return 0; } |
Java Syntax:
Java
public class first { public static void main(String[] args) { // prints Hello World System.out.println(" Hello World "); } } |
3. Comments Syntax are identical: Both the single and multiple line comments are written as //…. and /* …. */ respectively.
C++:
CPP
#include <iostream> using namespace std; int main() { // main() is where program execution begins int a = 5, b = 10, sum; sum = a + b; /* This will add the values of a and b and will display the output stored in sum */ cout << sum; return 0; } |
Java:
Java
public class GFG { public static void main(String[] args) { // main() is where program execution begins int a = 5 , b = 10 , sum; sum = a + b; /* This will add the values of a and b and will display the output stored in sum */ System.out.println(sum); } } |
4. The loops (like while, for etc.) and conditional statements (like if-else, switch etc.) are similar:
C++:
CPP
#include <iostream> using namespace std; int main() { int a = 5, b = 10; if (a > b) cout << a; else cout << b; return 0; } |
Output: 10
Java:
Java
public class firstjava { public static void main(String[] args) { // to display the greater number int a = 5 , b = 10 ; if (a > b) System.out.println(a); else System.out.println(b); } } |
Output: 10
5. Both have same arithmetic and relational operators.
Arithmetic operators such as +, -, *, / Relational operators such as >, <, =, != (not equal to)
6. Execution of both the C++ and Java programs starts from the main function: It is the entry point of the execution of the program.
However, the function declaration is different, but the name is same.
C++:
CPP
#include& lt; iostream & gt; using namespace std; int main() { // main() is where program execution begins cout& lt; < " Hello World" ; return 0; } |
Java:
Java
public class GFG { public static void main(String[] args) { // main() is where program execution begins System.out.println(" Hello World "); } } |
7. Statement in both the C++ and Java programs ends with semi-colon(;) :
C++:
C++
//C++ program statements ends with Semicolons (;) #include <iostream> using namespace std; int main(){ cout << "GEEKSFORGEEKS" ; return 0; } //This code is contributed by Susobhan AKhuli |
GEEKSFORGEEKS
Java:
Java
//Java program statements ends with Semicolons (;) import java.io.*; class GFG { public static void main (String[] args) { System.out.println( "GEEKSFORGEEKS" ); } } //This code is contributed by Susobhan AKhuli |
GEEKSFORGEEKS
8. They have same primitive data types: These include datatypes like int, float, char, double etc. with some differences like the Boolean data
type is called boolean in Java but it is called bool in C++.
9. Many of their keywords are same: Example:
break, continue, char, double, new, public, private, return, static etc.
10. Both have multi threading support: Both allow executing multiple threads(sub-processes) simultaneously to achieve multitasking.
11. Areas of Application: C++ is best suitable for developing large software like Library management system, Employee management system,
Passenger reservation systems etc. Java can be used to develop all these software but in addition to this Java is best suitable for developing Communication/Internet application software. eg: Network protocols, Internet programs, Web page, Web browser etc.