Java is one of the world’s most important and widely used computer languages.Today, it is still the first and best choice for developing web-based applications. It is also a powerful, general-purpose programming language suitable for a wide variety of purposes.A key reason for Java’s success is its agility. Since its original 1.0 release, Java has continually adapted to changes in the programming environment and to changes in the way that programmers program.
Java was conceived by James Gosling, Patrick Naughton, Chris Warth, Ed Frank, and Mike Sheridan at Sun Microsystems, Inc. in 1991. It took 18 months to develop the first working version.This language was initially called “Oak,” but was renamed “Java” in 1995.Java derives much of its character from C and C++.
This is by intent. The Java designers knew that using the familiar syntax of C and echoing the object-oriented features of C++ would make their language appealing to the legions of experienced C/C++ programmers.
Java Applets
At the time of Java’s creation, one of its most exciting features was the applet.
An applet is a special kind of Java program that is designed to be transmitted
over the Internet and automatically executed inside a Java-compatible web
browser. If the user clicks a link that contains an applet, the applet will
download and run in the browser.
Security
As desirable as dynamic, networked programs are, they can also present serious
problems in the areas of security and portability. Obviously, a program that
downloads and executes on the client computer must be prevented from doing
harm. It must also be able to run in a variety of different environments and
under different operating systems.
Portability
Portability is a major aspect of the Internet because there are many different
types of computers and operating systems connected to it. If a Java program
were to be run on virtually any computer connected to the Internet, there
needed to be some way to enable that program to execute on different systems.
Java’s Magic: The Bytecode
The key that allowed Java to solve both the security and the portability
problems just described is that the output of a Java compiler is not executable
code. Rather, it is bytecode. Bytecode is a highly optimized set of instructions
designed to be executed by what is called the Java Virtual Machine (JVM),
which is part of the Java Runtime Environment (JRE). In essence, the original
JVM was designed as an interpreter for bytecode.
Servlets: Java on the Server Side
Client side code is just one half of the client/server equation. Not long after the
initial release of Java, it became obvious that Java would also be useful on the
server side. The result was the servlet. A servlet is a small program that
executes on the server.
The Java Buzzwords (or) The Features of Java
• Simple
• Secure
• Portable
• Object-oriented
• Robust
• Multithreaded
• Architecture-neutral
• Interpreted
• High performance
• Distributed
• Dynamic
Simple
Java was designed to be easy for the professional programmer to learn and use
effectively. Assuming that you have some programming experience, you will
not find Java hard to master.Because Java inherits the C/C++ syntax and many of the objectoriented
features of C++, most programmers have little trouble learning Java.
Secure
Java is Secure
Portable
Java is portable because, the code is written once and can run any number of times and on any system.
java is portable because it is platform-independent.java's byte code can run on any system if it has jdk installed in the system.
when we compile the java code it compiles into '.class' file and which can run on any system.
Object-oriented
Although influenced by its predecessors, Java was not designed to be sourcecode
compatible with any other language. This allowed the Java team the
freedom to design with a blank slate. One outcome of this was a clean, usable,
pragmatic approach to objects.
Robust
The multiplatformed environment of the Web places extraordinary demands on
a program, because the program must execute reliably in a variety of systems.
Thus, the ability to create robust programs was given a high priority in the
design of Java. To gain reliability, Java restricts you in a few key areas to force
you to find your mistakes early in program development.
Multithreaded
Java was designed to meet the real-world requirement of creating interactive,
networked programs. To accomplish this, Java supports multithreaded
programming, which allows you to write programs that do many things
simultaneously. The Java run-time system comes with an elegant yet
sophisticated solution for multiprocess synchronization that enables you to
construct smoothly running interactive systems.
Architecture-neutral
A central issue for the Java designers was that of code longevity and
portability. At the time of Java’s creation, one of the main problems facing
programmers was that no guarantee existed that if you wrote a program today,it would run tomorrow—even on the same machine.
Interpreted
Java enables the creation of cross-platform programs by
compiling into an intermediate representation called Java bytecode. This code
can be executed on any system that implements the Java Virtual Machine. Most
previous attempts at cross-platform solutions have done so at the expense of
performance.
High performance
the Java bytecode was carefully designed so
that it would be easy to translate directly into native machine code for very
high performance by using a just-in-time compiler. Java run-time systems that
provide this feature lose none of the benefits of the platform-independent code.
Distributed
Java is designed for the distributed environment of the Internet because it
handles TCP/IP protocols. In fact, accessing a resource using a URL is not
much different from accessing a file. Java also supports Remote Method
Invocation (RMI). This feature enables a program to invoke methods across a
network.
Dynamic
Java programs carry with them substantial amounts of run-time type
information that is used to verify and resolve accesses to objects at run time.
This makes it possible to dynamically link code in a safe and expedient
manner. This is crucial to the robustness of the Java environment, in which
small fragments of bytecode may be dynamically updated on a running system.
References:
Java was conceived by James Gosling, Patrick Naughton, Chris Warth, Ed Frank, and Mike Sheridan at Sun Microsystems, Inc. in 1991. It took 18 months to develop the first working version.This language was initially called “Oak,” but was renamed “Java” in 1995.Java derives much of its character from C and C++.
This is by intent. The Java designers knew that using the familiar syntax of C and echoing the object-oriented features of C++ would make their language appealing to the legions of experienced C/C++ programmers.
Java Applets
At the time of Java’s creation, one of its most exciting features was the applet.
An applet is a special kind of Java program that is designed to be transmitted
over the Internet and automatically executed inside a Java-compatible web
browser. If the user clicks a link that contains an applet, the applet will
download and run in the browser.
Security
As desirable as dynamic, networked programs are, they can also present serious
problems in the areas of security and portability. Obviously, a program that
downloads and executes on the client computer must be prevented from doing
harm. It must also be able to run in a variety of different environments and
under different operating systems.
Portability
Portability is a major aspect of the Internet because there are many different
types of computers and operating systems connected to it. If a Java program
were to be run on virtually any computer connected to the Internet, there
needed to be some way to enable that program to execute on different systems.
Java’s Magic: The Bytecode
The key that allowed Java to solve both the security and the portability
problems just described is that the output of a Java compiler is not executable
code. Rather, it is bytecode. Bytecode is a highly optimized set of instructions
designed to be executed by what is called the Java Virtual Machine (JVM),
which is part of the Java Runtime Environment (JRE). In essence, the original
JVM was designed as an interpreter for bytecode.
Servlets: Java on the Server Side
Client side code is just one half of the client/server equation. Not long after the
initial release of Java, it became obvious that Java would also be useful on the
server side. The result was the servlet. A servlet is a small program that
executes on the server.
The Java Buzzwords (or) The Features of Java
• Simple
• Secure
• Portable
• Object-oriented
• Robust
• Multithreaded
• Architecture-neutral
• Interpreted
• High performance
• Distributed
• Dynamic
Simple
Java was designed to be easy for the professional programmer to learn and use
effectively. Assuming that you have some programming experience, you will
not find Java hard to master.Because Java inherits the C/C++ syntax and many of the objectoriented
features of C++, most programmers have little trouble learning Java.
Secure
Java is Secure
Portable
Java is portable because, the code is written once and can run any number of times and on any system.
java is portable because it is platform-independent.java's byte code can run on any system if it has jdk installed in the system.
when we compile the java code it compiles into '.class' file and which can run on any system.
Object-oriented
Although influenced by its predecessors, Java was not designed to be sourcecode
compatible with any other language. This allowed the Java team the
freedom to design with a blank slate. One outcome of this was a clean, usable,
pragmatic approach to objects.
Robust
The multiplatformed environment of the Web places extraordinary demands on
a program, because the program must execute reliably in a variety of systems.
Thus, the ability to create robust programs was given a high priority in the
design of Java. To gain reliability, Java restricts you in a few key areas to force
you to find your mistakes early in program development.
Multithreaded
Java was designed to meet the real-world requirement of creating interactive,
networked programs. To accomplish this, Java supports multithreaded
programming, which allows you to write programs that do many things
simultaneously. The Java run-time system comes with an elegant yet
sophisticated solution for multiprocess synchronization that enables you to
construct smoothly running interactive systems.
Architecture-neutral
A central issue for the Java designers was that of code longevity and
portability. At the time of Java’s creation, one of the main problems facing
programmers was that no guarantee existed that if you wrote a program today,it would run tomorrow—even on the same machine.
Interpreted
Java enables the creation of cross-platform programs by
compiling into an intermediate representation called Java bytecode. This code
can be executed on any system that implements the Java Virtual Machine. Most
previous attempts at cross-platform solutions have done so at the expense of
performance.
High performance
the Java bytecode was carefully designed so
that it would be easy to translate directly into native machine code for very
high performance by using a just-in-time compiler. Java run-time systems that
provide this feature lose none of the benefits of the platform-independent code.
Distributed
Java is designed for the distributed environment of the Internet because it
handles TCP/IP protocols. In fact, accessing a resource using a URL is not
much different from accessing a file. Java also supports Remote Method
Invocation (RMI). This feature enables a program to invoke methods across a
network.
Dynamic
Java programs carry with them substantial amounts of run-time type
information that is used to verify and resolve accesses to objects at run time.
This makes it possible to dynamically link code in a safe and expedient
manner. This is crucial to the robustness of the Java environment, in which
small fragments of bytecode may be dynamically updated on a running system.
References:

0 Comments