Professional Documents
Culture Documents
What is J ava ?
History of J a va
Features of J a va
Bytecode & J V M
J I T Compiler
Simple:
J ava was designed to be simple and familiar to learn
language.
Fundamental concepts can be grasped quickly as the
features borrowed from C & C++.
Features were removed that led to poor programming
practices or were rarely used.
It does not use pointers, goto statement, Preprocessor
header files etc.
It also eliminates operator overloading & multiple
inheritance.
Features of J a v a ( CO N TD …)
7
Secure:
Security becomes a n important issue for a language
that is used for programming on internet.
J V M verifies all byte codes before execution & ensures
Portable:
Object-oriented:
All coding and data reside within object and classes.
J a va has built-In exception handling.
Everything in J ava (except the primitive data types) is an
object.
The object model in java is simple and easy to extend so
that complex programming problems can be reduced to
simple solutions.
Extensive set of classes, arranged in packages
Example: java.awt, java.io, java.net .
Features of J a v a ( CO N TD …)
10
Robust:
J a va is a robust language. It provides many safeguards to
checking.
J ava supports automatic garbage collection so all
memory corruptions or unauthorized memory accesses
are impossible.
J ava also incorporates the concept of exception handling
which captures series errors & eliminates any risk of
crashing the system.
Features of J a v a ( CO N TD …)
11
Multithreaded :
Platform Independent:
J a va program can be easily moved from one computer
system to another, any where & any time.
Changes & upgrades of O S , Processor & System
resources will not force any changes in java program,
that is J ava is platform independent.
For this feature J a va ha s become a popular language
for programming on Internet which interconnects
different kinds of system world wide.
Features of J a v a ( CO N TD …)
13
High Performance:
J a va Bytecode was efficiently designed so that it would
be easy to translate directly into native machine code
for high performance by using a Just-In-Time (JIT)
compiler.
Since java is compiled & interpreted both, it is faster
than other interpreter language.
Also multithreading capability provides the overall
execution speed of java program.
Features of J a v a ( CO N TD …)
15
Distributed:
J a va is network friendly.
J a va is designed as a distributed environment for
creating applications on internet, because it handles
TCP/IP protocol.
J ava applications can open & access remote objects on
Internet as easily as they can do in a local system.
Multiple programmers can work together on a single
project from multiple remote locations.
Both data and programs can be shared on networks.
Features of J a v a ( CO N TD …)
16
Dynamic:
Provides a highly dynamic runtime environment.
Allows dynamically linking in new class libraries,
methods and objects.
New code can be linked on demand from anywhere on
the network and new types can be created as needed
dynamically.
This is crucial to the robustness of applet environment
in which small fragment of bytecode may be
dynamically updated on a running system.
Bytecode & J V M
17
Compiler
Bytecode
JVM
Machine
Code
J I T Compiler
19