0% found this document useful (0 votes)
14 views

2 - Java Evolution & Features

Uploaded by

ankurbiswas.uem
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views

2 - Java Evolution & Features

Uploaded by

ankurbiswas.uem
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

JAVA EVOLUTION AND

FEATURES
CHAPTER – 1I
HISTORY OF JAVA
• Java is a general-purpose, object-oriented
programming language developed by Sun
Microsystem of USA in 1991. James
Gosling
• Originally java was designed to develop
software for consumer electronic devices like
TVs, VCRs, toasters and other electronic
machines.

Java
Mascot

29-01-2023 Ankur Biswas (ANB) 2


HISTORY OF JAVA
• James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June
1991. The small team of sun engineers is called Green Team.
• Firstly, it was called "Greentalk" by James Gosling, and the file extension was .gt.
• After that, it was called Oak and was developed as a part of the Green project.
• In 1995, Oak was renamed "Java" because it was already a trademark by Oak Technologies.
• Why had they chosen the name Java for Java language? The team gathered to choose a new
name. The suggested words were "dynamic", "revolutionary", "Silk", "jolt", "DNA", etc. They
wanted something that reflected the essence of the technology: revolutionary, dynamic, lively,
cool, unique, and easy to spell, and fun to say.

29-01-2023 Ankur Biswas (ANB) 3


JAVA FEATURES
1. Compiled and Interpreted 7. Multithreaded and Interactive
2. Platform-Independent and portable 8. High Performance
3. Object-Oriented 9. Dynamic and extensible
4. Robust and Secure 10. Ease of Development
5. Distributed 11. Scalability and Performance
6. Simple, Small and Familiar 12. Monitoring and Manageability

29-01-2023 Ankur Biswas (ANB) 4


HOW JAVA DIFFER FROM C & C++
Java v/s C
Java is a lot like C but the major difference between Java and C is that Java is an object-
oriented language and has a mechanism to define classes and objects. In an effort to build a
simple and safe language, the Java team did not include some of the C features in Java.

1. Java does not include the C unique statement keywords ‘sizeof’, and ‘typedef’.
2. Java does not contain the data types ‘struct’ and ‘union’.
3. Java does not define the type of modifiers keywords ‘auto’, ‘extern’, ‘register’, ‘signed’, and
‘unsigned’.

29-01-2023 Ankur Biswas (ANB) 5


HOW JAVA DIFFER FROM C & C++
4. Java does not support an explicit pointer type.
5. Java does not have a processor and therefore we can not use #define, #include, and
#ifdef, statements.
6. Java requires that the functions with no arguments must be declared with empty
parenthesis and not with the void keyword as done in C.
7. Java adds new operators such as instanceof and >>>.
8. Java adds labelled break and continue statements.
9. Java adds many features required for object-oriented programming.

29-01-2023 Ankur Biswas (ANB) 6


HOW JAVA DIFFER FROM C & C++
Java v/s C++
Java is a true object-oriented language while C++ is basically C with object-oriented extension.
That is what exactly the increment operator ++ indicates.

C++ has maintained backward compatibility with C. It is therefore possible to write an old-
style C program and run it successfully under C++. Java appears to be similar to C++ when
we consider only the ‘extension’ part of C++. However, some object-oriented features of C++
make the C++ code extremely difficult to follow and maintain.

29-01-2023 Ankur Biswas (ANB) 7


HOW JAVA DIFFER FROM C & C++
Java v/s C++
Listed below are some major C++ features that were intentionally omitted from Java or significantly modified.
1. Java does not support operator overloading.
2. Java does not have template classes as in C++.
3. Java does not support multiple inheritance of classes. This is accomplished using a new feature called
“interface”.
4. Java does not support global variables. Every variable and method is declared within a class and forms
part of that class.
5. Java does not use pointers.
6. Java has replaced the destructor function with a finalize() function.
7. There are no header files in Java.
29-01-2023 Ankur Biswas (ANB) 8
JAVA DEVELOPMENT KIT (JDK)
The Java Development Kit comes with a collection of tools that are used for developing and
running Java programs. They include:
1. appletviewer (for viewing Java applets)
2. Javac (Java compiler)
3. Java (Java interpreter)
4. javap (Java disassembler)
5. javah (for C header files)
6. Javadoc (for creating HTML documents)
7. Jdb (Java debugger)

29-01-2023 Ankur Biswas (ANB) 9


APPLICATION PROGRAMMING INTERFACE(API)
The Java Standard Library (or API) includes hundreds of classes and methods grouped into
several functional packages.
Most commonly used packages are:
1. Language Support Package
2. Utilities Package
3. Input/Output package
4. Networking Package
5. AWT Package
6. Applet Package

29-01-2023 Ankur Biswas (ANB) 10


APPLICATION PROGRAMMING INTERFACE(API)
Text Editor

Java Source HTML


Javadoc
Code Files

javac

Java Class Header


javah
File Files

java jdb

Java Program Output

29-01-2023 Ankur Biswas (ANB) 11


JAVA RUNTIME ENVIRONMENT
The Java Runtime Environment (JRE) facilities the execution of programs developed in Java. It
primarily comprises the following:
1. Java Virtual Machine (JVM)
2. Runtime class libraries
3. User interface toolkits
4. Deployment technologies
a. Java plug-in
b. Java Web Start

29-01-2023 Ankur Biswas (ANB) 12


JAVA VIRTUAL MACHINE (JVM)
• JVM (Java Virtual Machine) is an abstract machine.
• It is a specification that provides runtime environment in which java bytecode can be
executed.
• JVMs are available for many hardware and software platforms (i.e. JVM is platform dependent).

29-01-2023 Ankur Biswas (ANB) 13


JAVA VIRTUAL MACHINE (JVM)
What is JVM?
1. A specification where the working of Java Virtual Machine is specified. But implementation
provider is independent to choose the algorithm. Its implementation has been provided by
Oracle and other companies.
2. 2. An implementation Its implementation is known as JRE (Java Runtime Environment).
3. 3. Runtime Instance Whenever you write the java command on the command prompt to run
the java class, an instance of JVM is created.

29-01-2023 Ankur Biswas (ANB) 14


THANK YOU

29-01-2023 Ankur Biswas (ANB) 15

You might also like