Java Tutorial Information
This page contains information on a two-week Java Tutorial course that I
taught to the CS department faculty, as background preparation
for the new non-major Computer Science "Elements" courses to be offered
starting Fall Semester 1999.
The book I selected for the tutorial course is The Java Programming
Language, Second Edition, by Ken Arnold and James Gosling. I chose
this book assuming that the majority of the people in the tutorial
would be experienced programmers in a modern programming language, and
would prefer a book on the core Java language, and not a book on general
object-oriented programming concepts using Java.
Other books I recommend are:
- A Little Java, A Few Patterns, by Matthias Felleisen and Daniel P Friendman
- On To Java, 2nd Edition, by Partrick Henry Winston and Sundar Narasimhan
- Thinking in Java, by Bruce Eckel
- The Java Class Libraries, Vol 1, 2nd Edition by Patrick Chan, Rosanna Lee, Douglas Kramer
- The Java Language Specification, by James Gosling, Bill Joy, and Guy Steele
- The Java Virtual Machine Specification, 2nd Edition, by Tim Lindhold and Frank Yellin
The Thinking in Java book is more of a slow start approach, and I have
used that book in my CS371P OOP class for CS seniors. The Class Libraries book
is a very large reference manual. The other two books are focused on
the language implementation, if you want the gory details.
Tutorial Notes
- Day 0 - Outline of Tutorial Topics in PostScript or PDF
- Day 1 - Introduction to Java (Chapter 1) in PostScript or PDF
- Day 2 - Types, Classes, Objects (Chapters 2 & 5) in PostScript or PDF
- Day 3 - Classes and Objects continued (Chapters 2 & 5) in PostScript or PDF
- Day 4 - String and StringBuffer classes (no new handout) - see source code for classes
- Day 5 - Recap of core Java language features PostScript or PDF
- Day 6 - Revised Wrapper classes lecture in PostScript or PDF
- Day 7 - Extending Classes and Interfaces (Chapters 3 & 4) in PostScript or PDF
- Day 8 - Cloneable, Vector class, Enumerations, Exceptions (Chapters 6 & 7) in PostScript and PDF
- Day 9 - Threads (Chapter 9) in PostScript or PDF
- Day 10 - Exception Handling and Simple Networking (Chapter 12 & notes) in PostScript and PDF
Java Programming
The department has ordered the Metrowerks
CodeWarrior Java development software for programming with Java on
Windows, Macintosh and Linux. The master CD is available from Patti Spencer.
The deparment Unix machines already have Java installed. If you set your
PATH environment variable to include /lusr/java/bin, then you can run
the java compiler ('javac') and java interpreter ('java') from a Unix
shell as shown in the Hello World example from the first set of tutorial notes.
If you want to download and install the Sun Java
Development Kit (JDK) for Solaris or Windows 95/NT, go to Java JDK Page at
JavaSoft. You can download either JDK 1.2.1 or JDK 1.1.8, which is the latest
stable JDK 1.1 maintenance release. JDK 1.2.1 has the latest language changes.
JDK 1.1.8 is probably more stable.
Some Sample Java Code
These examples are from David Flanagan's _Java in a Nutshell_ book. More examples
can be found at the Java
in a Nutshell webpage.
Java Related Web Sites