The language Java

Instructors' Guide


Introduction Terminology Expressions Control Objects Inheritance Technology Summary
Java has a direct heritage from C++. Started as an interpreted C++ like language under the name Oak, it became a hype due to its introduction as the dial-tone of the Internet in 1995.

Java -- the dial-tone of the Internet

D



   1995   Introduction at WWW3
   1996   1.0 with AWT
   1997   1.1.x with modified event handling
   1998   version 1.2 (beta) with Swing
  

Design principles -- safety

See: www.javasoft.com
and java.sun.com/docs/books/tutorial


slide: The language Java

The impact of Java has been enormous, not only in terms of its adoption in the software industry, but also in terms of the number of books written and sold. Java has also become the language of choice for introductory programming courses.

The original design purpose stated for Java was to provide a safe environment for executing so-called applets, written in a general purpose programming language, in a Web-browser. For that reason Java programs are executed by a virtual machine, in which the programs can be executed as in a sandbox protecting the environment from possibly malicious programs. In addition, the virtual machine gives a high degree of platform independence. The slogan that has accompanied the introduction of Java, write once, run everywhere does nevertheless not completely hold true when it concerns user interfaces, since the particularities of the various platforms have proved to be hard to master.

Whatever one may think of Java as a language, a lot of effort is put into coming to an agreement about the numerous APIs that are part of the Java platform. These include the Swing GUI framework, the component Beans, the reflection API, the native code interface, the multimedia framework, not forgetting the Java3D and VRML classes. This makes the Java platform indeed a very powerful and productive environment.

Java is very well documented. Apart from the many books about Java, there is also an excellent tutorial online, for free. See the URLs in slide appendix-java.