C++ & Java
COMPARATIVE STUDY OF THE LANGUAGES
By
Mr. V. VEERANAN
M.Sc. Computer Science., Dip. in Yoga.,
Government Arts College, Melur – 625 106.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Founder
C++
C++ was development by Bjarne
Stroustrup at Bell Labs in 1979 as an
extension of the C Language.
Java
Java was developed by James Gosling at
Sun Microsystems.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
First Release
C++ In October 1985
Java On May 23, 1995
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Stable Release
C++ C++ 20 released on 15th December 2020.
Java Java SE 18 released on 22 March 2022.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Official Website
C++ isocpp.org
Java oracle.com/java
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Influenced By:
C++
C++ was Influenced by Influenced by
Ada, ALGOL 68, C, ML, Simula,
Smalltalk, etc., language.
Java
Java was Influenced by Ada 83, Pascal,
C++, C#, etc., language.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Influenced to:
C++
C++ was Influenced to develop C99, Java,
JS++, Lua, Perl, PHP, Python, Rust,
Seed7, etc., languages.
Java
Java was influenced to develop
BeanShell, C#, Clojure, Groovy, Hack,
J#, Kotlin, PHP, Python, Scala, etc.,
languages.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Platform Dependency
C++
Platform dependent, should be complied
for different platforms.
Java
Paltform independent, Java bytecode
works on any operating system.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Portability
C++
C++ is platform-dependent.
Hence it is not portable.
Java It can run in any OS hence it is portable.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Compilation
C++ C++ is a Compiled Language.
Java
Java is both Compiled and Interpreted
Language.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Memory Management
C++ Memory Management in C++ is Manual.
Java
Memory Management is System
Controlled.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Virtual Keyword
C++ It has Virtual Keywords.
Java It doesn’t have Virtual Keyword.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Multiple Inheritance
C++
It supports both single and multiple
Inheritance.
Java
It supports only single inheritance.
Multiple inheritance are achieved
partially using interfaces.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Overloading
C++
It supports both method and operator
overloading.
Java
It supports only method overloading and
doesn’t allow operator overloading.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Pointers
C++ It strongly supports pointers.
Java It has limited supports for pointers.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Libraries
C++
It supports direct system library calls,
making it suitable for system-level
programming.
Java
It doesn’t support direct native library
calls but only Java Native Interfaces.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Libraries
C++
C++ libraries have comparatively low-
level functionalities.
Java
Libraries have a wide range of classes for
various high-level services.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Documentation Comment
C++
It doesn’t support documentation
comments for source code.
Java
It supports documentation commends
(eg., /**..*/) for source code.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Thread Support
C++
C++ doesn’t have built-in support for
threads, depends on third-party
threading libraries.
Java
Java Provides built-in support for
multithreading.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Type
C++
C++ is both a procedural and an object-
oriented programming language.
Java
Java is only an object-oriented
programming language.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Input-Output Mechanism
C++
C++ uses cin for input and cout for an
output operation.
Java
Java uses the (System Class): System.in
for input and System.out for output.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Goto Keyword
C++ C++ supports goto keyword.
Java Java doesn’t support goto keyword.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Structures and Unions
C++ C++ supports Structures and Unions.
Java
Java doesn’t support Structures and
Unions.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Parameter Passing
C++
C++ supports both pass by Value and
pass by reference.
Java
Java supports only the pass by Value
technique.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Global Scope
C++
It supports both global scope and
namespace scope.
Java It supports no global scope.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Object Management
C++
It supports manual object management
using new and delete.
Java
Automatic object management with
garbage collection.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Call by Value and Call by reference
C++
C++ both supports call by value and call
by reference.
Java Java supports only Call by value.
C++ & Java
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga
Hardware
C++ C++ is nearer to hardware.
Java Java is not so interactive with hardware.
Mr. V.Veeranan, M.Sc. Computer Science, Dip. in Yoga

Java & C++ Comparative Study of the Languages

  • 1.
    C++ & Java COMPARATIVESTUDY OF THE LANGUAGES By Mr. V. VEERANAN M.Sc. Computer Science., Dip. in Yoga., Government Arts College, Melur – 625 106.
  • 2.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Founder C++ C++ was development by Bjarne Stroustrup at Bell Labs in 1979 as an extension of the C Language. Java Java was developed by James Gosling at Sun Microsystems.
  • 3.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga First Release C++ In October 1985 Java On May 23, 1995
  • 4.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Stable Release C++ C++ 20 released on 15th December 2020. Java Java SE 18 released on 22 March 2022.
  • 5.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Official Website C++ isocpp.org Java oracle.com/java
  • 6.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Influenced By: C++ C++ was Influenced by Influenced by Ada, ALGOL 68, C, ML, Simula, Smalltalk, etc., language. Java Java was Influenced by Ada 83, Pascal, C++, C#, etc., language.
  • 7.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Influenced to: C++ C++ was Influenced to develop C99, Java, JS++, Lua, Perl, PHP, Python, Rust, Seed7, etc., languages. Java Java was influenced to develop BeanShell, C#, Clojure, Groovy, Hack, J#, Kotlin, PHP, Python, Scala, etc., languages.
  • 8.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Platform Dependency C++ Platform dependent, should be complied for different platforms. Java Paltform independent, Java bytecode works on any operating system.
  • 9.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Portability C++ C++ is platform-dependent. Hence it is not portable. Java It can run in any OS hence it is portable.
  • 10.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Compilation C++ C++ is a Compiled Language. Java Java is both Compiled and Interpreted Language.
  • 11.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Memory Management C++ Memory Management in C++ is Manual. Java Memory Management is System Controlled.
  • 12.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Virtual Keyword C++ It has Virtual Keywords. Java It doesn’t have Virtual Keyword.
  • 13.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Multiple Inheritance C++ It supports both single and multiple Inheritance. Java It supports only single inheritance. Multiple inheritance are achieved partially using interfaces.
  • 14.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Overloading C++ It supports both method and operator overloading. Java It supports only method overloading and doesn’t allow operator overloading.
  • 15.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Pointers C++ It strongly supports pointers. Java It has limited supports for pointers.
  • 16.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Libraries C++ It supports direct system library calls, making it suitable for system-level programming. Java It doesn’t support direct native library calls but only Java Native Interfaces.
  • 17.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Libraries C++ C++ libraries have comparatively low- level functionalities. Java Libraries have a wide range of classes for various high-level services.
  • 18.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Documentation Comment C++ It doesn’t support documentation comments for source code. Java It supports documentation commends (eg., /**..*/) for source code.
  • 19.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Thread Support C++ C++ doesn’t have built-in support for threads, depends on third-party threading libraries. Java Java Provides built-in support for multithreading.
  • 20.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Type C++ C++ is both a procedural and an object- oriented programming language. Java Java is only an object-oriented programming language.
  • 21.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Input-Output Mechanism C++ C++ uses cin for input and cout for an output operation. Java Java uses the (System Class): System.in for input and System.out for output.
  • 22.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Goto Keyword C++ C++ supports goto keyword. Java Java doesn’t support goto keyword.
  • 23.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Structures and Unions C++ C++ supports Structures and Unions. Java Java doesn’t support Structures and Unions.
  • 24.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Parameter Passing C++ C++ supports both pass by Value and pass by reference. Java Java supports only the pass by Value technique.
  • 25.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Global Scope C++ It supports both global scope and namespace scope. Java It supports no global scope.
  • 26.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Object Management C++ It supports manual object management using new and delete. Java Automatic object management with garbage collection.
  • 27.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Call by Value and Call by reference C++ C++ both supports call by value and call by reference. Java Java supports only Call by value.
  • 28.
    C++ & Java Mr.V.Veeranan, M.Sc. Computer Science, Dip. in Yoga Hardware C++ C++ is nearer to hardware. Java Java is not so interactive with hardware.
  • 29.
    Mr. V.Veeranan, M.Sc.Computer Science, Dip. in Yoga