Java ScreenShot

Screenshot Core Java 2: Volume I - Fundamentals

Table of Contents
 1.  An Introduction to Java

Java as a Programming Tool

As a computer language, Java's hype is overdone: Java is certainly a good coding language. There is no doubt that it is one of the better languages available to serious programmers. We think it could potentially have been a great coding language, but it is probably too late for that. Once a language is out in the field, the ugly reality of compatibility with existing code sets in. Moreover, even in cases where changes are possible without breaking existing code, it is hard for the creators of a language as acclaimed as Java to sit back and say, "Well, maybe we were wrong about X, and Y would be better." In sum, while we expect there to be some improvements over time, basically, the structure of the Java language tomorrow will be much the same as it is today. Having said that, the obvious question is, where did the dramatic improvements of Java come from? The answer is that they didn't come from changes to the underlying Java coding language, they came from major changes in the Java libraries. Over time, Oracle changed everything from the names of many of the library functions (to make them more consistent), to how graphics works (by changing the event handling model and rewriting parts from scratch), to adding important features like printing that were not part of Java 1.0. The result is a far more useful coding platform that has become enormously more capable and useful than early versions of Java.

Java graphics notes_icon.gif

Microsoft has released a product called J++ that shares a family relationship with Java. Like Java, J++ is interpreted by a virtual machine that is compatible with the Java Virtual Machine for executing Java bytecodes, but there are substantial differences when interfacing with external code. The basic language syntax is almost identical to Java. However, Microsoft added language constructs that are of doubtful utility except for interfacing with the Windows API. In addition to Java and J++ sharing a common syntax, their foundational libraries (strings, utilities, networking, multithreading, math, and so on) are essentially identical. However, the libraries for graphics, user interfaces, and remote object access are completely different. At this point, Microsoft is no longer supporting J++ but has instead introduced another language called C# that also has many similarities with Java but uses a different virtual machine. We do not cover J++ or C# in this tutorial.


Java ScreenShot