3. Java is a set of several computer software
products and specifications from Sun
Microsystems (which has since merged with
Oracle Corporation), that together provide a
system for developing application software and
deploying it in a cross-platform computing
environment. Java is used in a wide variety of
computing platforms from embedded devices
and mobile phones on the low end, to enterprise
servers and supercomputers on the high end.
While less common, Java applets are sometimes
used to provide improved and secure functions
while browsing the World Wide Web on desktop
computers.
4. Java was created by a team led by James Gosling for
Sun Microsystems, James Gosling, Mike Sheridan, and
Patrick Naughton initiated the Java language project in
June 1991. Java was originally designed for interactive
television, but it was too advanced for the digital cable
television industry at the time.
The language was initially called Oak after an oak tree
that stood outside Gosling's office; it went by the name
Green later, and was later renamed Java, from Java
coffee, said to be consumed in large quantities by the
language's creators. However, when Java 1.0 was
released to the public in 1996, its main focus had shifted
to use on the Internet.java language derives much of its
syntax from c and c++ but has a simpler object model
and fewer low-level facilities.
5. Java is a fully functional, platform
independent, programming language it has
powerful set of machine independent libraries,
including windowing (GUI) libraries.Java
applications are typically compiled to byte
code (class file) that can run on any Java
Virtual Machine (JVM) regardless of computer
architecture.
The most interested thing about java is "write
once, run anywhere" (WORA), meaning the
code that runs on one platform does not need
to be recompiled to run on another.
6. One characteristic of Java is portability, which means
that computer programs written in the Java
language must run similarly on any
hardware/operating-system platform. This is achieved
by compiling the Java language code to an
intermediate representation called Java byte code,
instead of directly to platform-specific machine
code.
Java byte code instructions are analogous to
machine code, but are intended to be interpreted
by a virtual machine (VM) written specifically for the
host hardware. End-users commonly use a Java
Runtime Environment (JRE) installed on their own
machine for standalone Java applications.
7. Java is very powerful language but
it has its own pros and cons too. So
lets discuss some strong and weak
points of java.
8. Completely Free.
The syntax is familiar to the programmers
that know any other C based language.
Java (the platform) has a very large and
standard class library, some parts of
which are very well written.
Automatic Memory Management
implemented by Garbage Collection
9. Java provides a platform for behavioral
transfer from one address space to
another. This is particularly evident in the
dynamic class loading mechanisms of RMI
(Remote Method Invocation).
Explicit Interfaces
Improving performance
Good portability (certainly better than that
of nearly any compiled alternative)
10. Simplified syntax (compared to C++)
Language design not committee driven
Lots of available code and third-party libraries
If you love OOP, the only way to write functions
is to make them class methods.
Many standard interfaces defined in the
standard library, which would have been
vendor/OS specific otherwise, helps a lot in
achieving portability and ease
integration/selection of 3rd party libraries. E.g.
JDBC, JMS, JCE, JAI, serial I/O, JAXP, JNDI, etc.
Some have correspondence in other
languages (e.g. ODBC) but not all.
11. Performance: Java can be perceived as significantly
slower and more memory-consuming than natively
compiled languages such as C or C++.
Look and feel: The default look and feel of GUI
applications written in Java using the Swing toolkit is
very different from native applications. It is possible to
specify a different look and feel through the
pluggable look and feel system of Swing.
Single-paradigm language: Java is predominantly a
single-paradigm language. However, with the
addition of static imports in Java 5.0 the procedural
paradigm is better accommodated than in earlier
versions of Java.
12. The general-purpose, high-level Java
programming language is a powerful
software platform. Every full
implementation of the Java platform gives
you the following features:
13. Development Tools: The development
tools provide everything you'll need for
compiling, running, monitoring,
debugging, and documenting your
applications. As a new developer, the
main tools you'll be using are the javac
compiler, the java launcher, and the
javadoc documentation tool.
14. Application Programming Interface (API):
The API provides the core functionality of
the Java programming language. It offers a
wide array of useful classes ready for use in
your own applications. It spans everything
from basic objects, to networking and
security, to XML generation and database
access, and more. The core API is very
large; to get an overview of what it
contains.
15. Deployment Technologies: The JDK
software provides standard mechanisms
such as the Java Web Start software and
Java Plug-In software for deploying your
applications to end users.
User Interface Toolkits: The Swing and
Java 2D toolkits make it possible to
create sophisticated Graphical User
Interfaces (GUIs).
16. Integration Libraries: Integration libraries
such as the Java IDL API, JDBC, API, Java
Naming and Directory Interface (JNDI)
API, Java RMI, and Java Remote
Method Invocation over Internet Inter-
ORB Protocol Technology (Java RMI-IIOP
Technology) enable database access
and manipulation of remote objects.
17. We can't promise you fame, fortune, or
even a job if you learn the Java
programming language. Still, it is likely to
make your programs better and requires
less effort than other languages. We
believe that Java technology will help you
do the following:
18. Get started quickly: Although the Java
programming language is a powerful
object-oriented language, it's easy to learn,
especially for programmers already familiar
with C or C++.
Write less code: Comparisons of program
metrics (class counts, method counts, and
so on) suggest that a program written in the
Java programming language can be four
times smaller than the same program
written in C++.
19. Write better code: The Java programming
language encourages good coding practices,
and automatic garbage collection helps you
avoid memory leaks. Its object orientation, its
JavaBeans, component architecture, and its
wide-ranging, easily extendible API let you
reuse existing, tested code and introduce
fewer bugs.
Develop programs more quickly: The Java
programming language is simpler than C++,
and as such, your development time could be
up to twice as fast when writing in it. Your
programs will also require fewer lines of code.
20. Avoid platform dependencies: You can
keep your program portable by avoiding
the use of libraries written in other
languages.
Write once, run anywhere: Because
applications written in the Java
programming language are compiled
into machine-independent bytecodes,
they run consistently on any Java
platform.
21. Distribute software more easily: With
Java Web Start software, users will be
able to launch your applications with a
single click of the mouse. An automatic
version check at startup ensures that
users are always up to date with the
latest version of your software. If an
update is available, the Java Web Start
software will automatically update their
installation.
22. You can put your first step here, the most
reliable source provided by oracle itself !
http://docs.oracle.com/javase/tutorial/
getStarted/index.html