previous up next print clean
Next: Why not Java? Up: Schwab & Schroeder: A Previous: Inheritance

Why Java?

Java is simple to learn and to use. Jag's predecessors, HCL and CLOP, were based on C++, a language whose basics are considerably more difficult to learn than Java.

Why is Java easier then C++? Java uses built in types and references but no pointers. Java has built in garbage collection. Java's interfaces allow multiple inheritance. Java has no C legacy features and imitates the C and C++ syntax. Java has no header files but its own package inclusion scheme. Java has some high level programming features such as hash tables or dynamic arrays. Java's strong typing and its array bound checking help a programmer to find bugs early.

Furthermore, Java's naming scheme is intuitive. Java's decision to derive every class from a single root class, Java.Object, gives the package a conceptual consistency. However, Java includes wisely a few primitive data types, such as floats or integers, for which an object implementation is often inefficient and superfluous.[*] Finally, Java wraps object-orientation, a window-, and a networking-toolkit into a single language.

Overall, we had fun coding Java. We hope that Jag will enable us to program software solutions that we would not attempt in a less sophisticated (Fortran) or more complicated (C++) programming language. However, Java undergoes rapid developments currently, and it is difficult to guess where it might go.


previous up next print clean
Next: Why not Java? Up: Schwab & Schroeder: A Previous: Inheritance
Stanford Exploration Project
11/11/1997