Characteristics of Java
•Java is simple
• Java is object-oriented
• Java is distributed
• Java is interpreted
• Java is robust
• Java is secure
• Java is architecture-neutral
• Java is portable
• Java’s performance
• Java is multithreaded
• Java is dynamic
3.
Simple :
• Mostof the concepts are drew from C++ thus
making Java learning simpler.
• No language is simple, but Java is a bit easier
than the popular object-oriented programming
language C++, which was the dominant
software-development language before Java.
• Java is partially modeled on C++, but greatly
simplified and improved.
4.
Simple :
• Forinstance, pointers and multiple inheritance often
make programming complicated.
• Java replaces the multiple inheritance in C++ with a
simple language construct called an interface, and
eliminates pointers.
• The clean syntax makes Java programs easy to write
and read.
• Some people refer to Java as "C++--" because it is
like C++ but with more functionality and fewer
negative aspects.
5.
• Java issmall and simple language. Many
features of C and C++ are not part of Java
eg. : Java does not provide
•Pointers
•Preprocessors header file
•goto statements
•Operator overloading
•Multiple inheritance
Simple :
6.
Object-oriented :
• Javaprogramming is object-oriented
programming language.
• Like C++ java provides most of the object
oriented features.
• Java is pure OOP Language. (while C++ is semi
object oriented)
7.
Object-oriented :
• Objectoriented programming models the real
world in terms of objects.
• Everything in the world can be modeled as an
object.
• A circle is an object, a person is an object, and a
Window icon is an object.
• A Java program is object-oriented because
programming in Java is centered on creating
objects, manipulating objects, and making objects
work together.
8.
Object-oriented :
• Object-orientedprogramming provides great
flexibility, modularity, clarity, and reusability
through encapsulation, inheritance, and
polymorphism
• Its simple, clean syntax makes programs easy to
write and read.
• Java programs are quite expressive in terms of
designing and developing applications.
9.
Distributed :
• Distributedcomputing involves several
computers working together on a network.
• Java is designed to make distributed computing
easy.
• It has the ability to share both data and programs
• Since networking capability is inherently
integrated into Java, writing network programs is
like Sending and receiving data to and from a file.
10.
Interpreted :
• Youneed an interpreter to run Java programs.
• The programs are compiled into the Java Virtual
Machine code called bytecode.
• The bytecode is machine-independent and can run
on any machine that has a Java interpreter, which
is part of the Java Virtual Machine (JVM).
• Most compilers, including C++ compilers,
translate programs in a high-level language to
machine code.
• The code can only run on the native machine.
11.
• First Javacompiler translates source code into
byte code instructions
• Byte codes are not machine instructions
• In the second stage Java interpreter generates
machine code
• That can be directly executed by the machine
Interpreted :
12.
Robust :
• Javaencourages error-free programming by being
strictly typed and performing run-time checks.
• Robust means reliable. No programming
language can ensure complete reliability.
• Java puts a lot of emphasis on early checking for
possible errors, because Java compilers can detect
many problems that would first show up at
execution time in other languages.
• Java also provides concept of exception handling
which identifies errors and eliminates.
13.
Secure :
• Javaprovides a secure means of creating Internet
applications.
• Java provides secure way to access web
applications.
• As an Internet programming language, Java is
used in a networked and distributed environment.
• The absence of pointers in Java ensures that
programs cannot gain access to memory location
without proper initialization.
14.
Architecture-neutral :
• Javais interpreted. This feature enables Java to
be architecture-neutral (platform-independent)
• With a Java Virtual Machine (JVM), you can
write one program that will run on any platform
• Java is not tied to a specific machine or
operating system architecture.
• Machine Independent i.e Java is independent of
hardware .
15.
Architecture-neutral :
• Today,software vendors usually develop
multiple versions of the same product to run on
different platforms (Windows, OS/2, Macintosh,
and various UNIX, IBM AS/400, and IBM
mainframes).
• Using Java, developers need to write only one
version that can run on every platform.
16.
Portable :
• Themost significant feature of Java is its
portability
• Java programs can execute in any environment
for which there is a Java run-time system.(JVM)
• Platform Independent : Java programs can be
run on any platform (Linux,Window,Mac)
• Java programs can be easily moved from one
computer system to another ,anywhere and at
anytime
High performance :
•Bytecodes are highly optimized.
• JVM can executed them much faster .
• Users of the earlier Sun Java Virtual Machine
certainly noticed that Java was slow.
• However, the new JVM is significantly faster.
• The new JVM uses the technology known as just-in-
time compilation.
19.
Multithreaded :
• Multithreadingis a program’s capability to
perform several tasks simultaneously.
• For example, downloading a video file while
playing the video would be considered
multithreading.
• Java provides integrated support for
multithreaded programming.
20.
Multithreaded :
• Multithreadingis particularly useful in graphical
user interface (GUI) and network programming.
• In GUI programming, there are many things going
on at the same time.
• A user can listen to an audio recording while
surfing a Web page.
• In network programming, a server can serve
multiple clients at the same time.
• Multithreading is a necessity in multimedia and
network programming.
21.
• Java iscapable of dynamically linking new
• Class libraries
• Methods
• Objects
• Java programs supports functions written in
other languages such as C and C++
• These functions are known as “native methods”
Dynamic :
22.
Dynamic :
• Javawas designed to adapt to an evolving
environment.
• New class can be loaded on the fly without
recompilation.
• There is no need for developers to create, and for
users to install, major new software versions.
24
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
25.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Java is partially modeled on C+
+, but greatly simplified and
improved.
It Eliminates pointer and replace
multiple inheritance with interface.
Java is Easy to write and more
readable
26.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Java is inherently object-
oriented.
Like C++ java provides most
of the object oriented features.
Java is pure OOP Language.
(while C++ is semi object
oriented)
27.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Java is designed to make
distributed computing easy.
Since networking capability is
inherently integrated into Java,
writing network programs is like
sending and receiving data to
and from a file.
28.
28
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
You need an interpreter to run
Java programs.
The programs are compiled
into the Java Virtual Machine
code called bytecode.
The bytecode is machine-
independent and can run on any
machine that has a Java
interpreter.
29.
29
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Robust means reliable.
Java has eliminated certain
types of error-prone
programming constructs.
For example: overwriting data
and corrupting the data
Java has a runtime exception-
handling feature to provide
programming support for
robustness.
30.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
As an Internet programming
language, Java is used in a
networked and distributed
environment
Java provides secure way to
access web applications.
Java implements several
security mechanisms to protect
your system against harm
caused by stray programs.
31.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Also called platform-
independent.
Write once, run anywhere.
With JVM, you can write
one program that will run on
any platform.
32.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Because Java is architecture
neutral, Java programs are
portable.
They can be run on any
platform without being
recompiled.
33.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
JVM can executed them much
faster .
Users of the earlier Sun Java
Virtual Machine certainly noticed
that Java was slow.
However, the new JVM is
significantly faster.
34.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
Multithreading is a program’s
capability to perform several
tasks simultaneously.
For example, downloading a
video file while playing the video
would be considered
multithreading.
35.
Characteristics of Java
•Java Is Simple
• Java Is Object-Oriented
• Java Is Distributed
• Java Is Interpreted
• Java Is Robust
• Java Is Secure
• Java Is Architecture-
Neutral
• Java Is Portable
• Java's Performance
• Java Is Multithreaded
• Java Is Dynamic
New class can load without
recompilation.
There is no need for
developers to create, and for
users to install, major new
software versions.
New features can be
incorporated transparently as
needed.