History of Java
Java is a general-purpose, concurrent, class-based, object-oriented computer programming language that is specifically designed to
have as few implementation dependencies as possible. It is intended to let
application developers "write once, run anywhere" (WORA), meaning
that code that runs on one platform does not need to be recompiled to run on
another.
James Gosling initiated the Java language project in June
1991 that time it was called “Oak “. Later in 1995 first version of java
(Java1.0) was released by Sun Microsystems.
In January 1995, Oak was renamed Java (as the name Oak was
already in use), and developed into a robust programming language for building
WWW-based applications. As a proof-of-concept, they developed a web browser
known as Hot Java (written in Java) that is capable of running mini Java
applications (known as Applets) that are embedded in WWW pages. This feature of
Hot Java was then taken up by Netscape and Microsoft. Later in 1995 Sun
released the initial Java Development Kit (JDK) and Hot Java.
What is Java?
Java is a programming language which is now a subsidiary of
Oracle Corporation originally developed by James Gosling at Sun Microsystems in
1995.
Java technology's versatility, efficiency, platform
portability, and security make it the ideal technology for network computing.
Today Java is used in all fields including enterprise
applications; Data Enters, game consoles to scientific supercomputers, cell
phones, Internet, fiancé sector, telecom domain etc.
Java is an object oriented programming language .Java is third generation programming language .
Java is Simple, Object-Oriented, Distributed, Interpreted, Robust, Secure, Architecture-Neutral, Portable, High-Performance, Multithreaded and Dynamic programming language.
Where and why Java is used?
Java is used where we need versatility, efficiency, platform
portability, and security.
Today Java is used in all fields including enterprise
applications; data enters, game consoles to scientific supercomputers, cell
phones, Internet, financé sector, telecom domain etc.
Java is an object oriented programming language. Java is third generation programming language .So Java is used as Simple, Object-Oriented, Distributed, Interpreted, Robust, Secure, Architecture-Neutral, Portable, High-Performance, Multithreaded and Dynamic programming language.
Java is an object oriented programming language. Java is third generation programming language .So Java is used as Simple, Object-Oriented, Distributed, Interpreted, Robust, Secure, Architecture-Neutral, Portable, High-Performance, Multithreaded and Dynamic programming language.
Principles
There were five primary
goals in the creation of the Java language
1. It should be
"simple, object-oriented and familiar"
2. It should be
"robust and secure"
3. It should be
"architecture-neutral and portable"
4. It should execute with
"high performance"
5. It should be
"interpreted, threaded, and dynamic"
Versions
Major release versions
of Java, along with their release dates:
· JDK 1.0 (January 21,
1996)
· JDK 1.1 (February 19,
1997)
· J2SE 1.2 (December 8,
1998)
· J2SE 1.3 (May 8, 2000)
· J2SE 1.4 (February 6,
2002)
· J2SE 5.0 (September 30,
2004)
· Java SE 6 (December 11,
2006)
· Java SE 7 (July 28, 2011)
Editions
- Java Card for smartcards.
- Java
Platform, Micro Edition (Java ME) — targeting environments
with limited resources.
- Java
Platform, Standard Edition (Java SE) — targeting
workstation environments.
- Java
Platform, Enterprise Edition (Java EE) — targeting large
distributed enterprise or Internet environments.
Advantages of Java
JAVA is an open source code object oriented programming (OOP)
language by Sun Microsystems that together provide a system for
developing an application software and deploying it in a cross-platform
environment(platform independent ).
Java is used in computing
platforms from embedded devices and mobile phones, enterprise servers and
supercomputers .Java is also used into nearly everywhere in mobile phones, Web
servers and enterprise applications, and desktop computers, Applets are often
used on World Wide Web.
Advantages of JAVA:
1. Java
is an open source
2. Platform independent
3. Java API's
can easily be accessed by developers
4. Java
performs supports garbage collection, so doesn't need extra focus on memory management
as java support automatic memory managements.
5. Java
supports exception handling.
6. Java
always allocates objects on the stack
7. Multi-platform
support language and support for web-services
8. Using
JAVA we can develop dynamic web applications
9. It
allows you to create modular programs and reusable codes
10. Java is simple: Java is simple. It doesn't need prier
knowledge of C,C++ etc .You can starts from only. Java is design to be easy to
use. Java is easy to write, compile, debug, and learn thanother programming
languages. Java uses automatic memory allocation and garbage collection where
else C++ requires the programmer to allocate memory and to collect garbage so
these languages are more complex.
11.Java is
object-oriented: Java is cantered on creating objects, manipulating
objects, and making objects work together. This allows us to create an
application in modular programs and reusable code.
12.Java is platform-independent: Java allow
us make an application and run anywhere. As when an application complies then
Java converts into Byte code. This byte code can be run anywhere (Mean any
hardware Supported or OS).
13.Java is distributed: Using Java
we can work on distributed computers involves several computers on a network
working together. Java is designed to make distributed computing easy with the
networking capability that is inherently integrated into it. We can write a
network programs in Java are which will send and receive data to and from a
file.
14.Java is robust: Java is a robust means
reliable and no programming language can really assure reliability. Java puts a
lot of emphasis on early checking for possible errors. Java compilers are able
to detect many problems that would first show up during execution time in other
languages.
15.Java is
multithreaded: Java supports multithreading are the capability for a
program to perform several tasks simultaneously within a program.
16.Java is interpreted
programming Languages: The programs are compiled into Java Virtual Machine code
called bytecode using interpreter.The bytecode is machine independent and is
able to run on any machine that has a Java interpreter. With Java, the program
need only be compiled once, and the byte code generated by the Java compiler can
run on any platform.
17.Java is secure: Java is a first programming language to consider
security as part of its design. The Java language, compiler, interpreter, and
runtime environment were each developed with security in mind.
Disadvantages of Java
- Performance Slower
Than C or C++: Java can be perceived as significantly slower and more
memory-consuming than natively compiled languages such as C or C++.
- Java applications
runs on JVM which is a program .It may be written
incorrect .
- Java applications
runs on JVM which cause slow down to programs as compare to C and C++
Limitations of Java Language
Of
course each languages has some limitations and so java have some limitations:
- The look & feel of the GUI
written in Java using Swing may not be the same as the widget look and
feel of the underlying operating system.
- Java largely supports IEEE-754 floating
point arithmetic, but certain features are not supported even with the use
of the ‘strictfp’ modifier in Java.
- ·While bytecodes make Java a
portable language to a great extent, they cause the performance to slow
down to a certain extent as well.
- Java uses the automatic garbage
collector to handle all the memory management and the programmer has no
control on it.
- Different JVM for different platform
Future of Java Language
Java 2 Platform, Standard Edition 5.0, code- named "Tiger".
TheJava platform has split into three branches (Standard, Enterprise , and Micro) and the JDK has been
released to the open source community. The Java language has expanded to
include annotations, generics, enumerations, advanced collections, and more. It
has also begun to share its home, the JRE, with dynamic languages like Groovy,
JRuby, and Rhino, to name a few. In fact, if you think about it, especially
over the last few years, we've collectively watched as the moniker of Java has
transformed from a language into a veritable platform.