Xah Lee, 2005-01, 2007-12
This is a brief tutorial on Java the language for those professional programers who may not have had experience with Object Oriented methodology, or those who wish to have a no-frills introduction to Java. This tutorial is example based, and explains the java language concretely. It explains how the language's various keywords and constructs effect the source code's meaning. (Think of it as a practical mathematical treatment) This tutorial does not use metaphors (such as “fruits→(bananas, apples)” for hierarchy) that are commonly practiced in most other Java books, nor do we try to tell you what's supposedly good practices and benefits of “software engineering” and OOP. We also avoid computer scientist's perspective with concepts such as “memory allocation”, “garbage collection”, “stacks”, “pointers/references”.
In summary, if you are a programer familiar with a high-level language (aka scripting language) such as PHP, Javascript, Python, Mathematica, you'll find this tutorial to the point.
Spend 30 minutes on each item per day, in order. After a month, you'll be a self-sustaining Java programer. (You are expected to already know one computer language.) The code here are tested with Java 1.5.0.
First, read this: What are OOP's Jargons and Complexities? It gives a concrete overview of what Object Oriented Programing means.
What are OOP's Jargons and Complexities?
What is Expresiveness in a Computer Language
Note: Java is a trademark of Sun Microsystems Inc. This tutorial is not endorsed by them. The Java image on this page is created and copyright by Xah Lee. It is NOT the Sun Microsystems's Java logo.
Page created: 2005-01. © 2005 by Xah Lee.