Much of the material for this class was originally made by Professor Chuck Allison. You can read Professor Allison's papers at his professional website,

Professor Allison's Sample Code

Study guide for first test

Study guide for second test

Study guide for third test (final exam)

Code from class Click on the link at left to see code written in class.

The Java Tutorial The Java Tutorial includes a lot of helpful explanation and examples.

Overview3.ppt   An overview of the Java programming language.

JAR Files   A Java Tutorial lesson on using JAR files.

Types2.ppt   Chapter 3: Types, control flow, strings, arrays

Objects.ppt   Chapter 4: Objects, classes, packages

Specification of the Java Virtual Machine This is an online book from Sun.


Arrays.ppt   A short example that demonstrates enums

Overloading-Ctors2.ppt Overloading constructors



Object-oriented Programming in Java Chuck Allison's article from November, 1999. OOP.ppt slides that refer to "Figure 2", "Figure 3", etc., are referring to figures from this article, which can be found at the end of the article.


These slides include information about invariants, assertions, javadoc, and a few other topics.

Programming with Assertions
Oracle documentation about using assertions in Java

The home page for Javadoc is at Detailed documentation (for the Windows platform) is at

I/O Slides

The I/O part of The Java Tutorial

The Proxy Design Pattern
This JavaWorld paper by David Geary explains the proxy design pattern.

Chuck Allison's slides: Collections.ppt
Sample programs from the slides, including Xref:

Revised collections slides: Collections2.ppt

The Java Tutorial section on Collections:

The Java Tutorial section on Generics:

The Java Tutorial section on Object Ordering (Comparable and Comparator):

Here are some slides that Professor Allison wrote about unit testing in Java: TestSuite.ppt

New thread slides: threads2b.pptx

A JavaWorld article: "Multicore processing for client-side Java applications", by Kirill Grouchnikov

Network Programming


Practical TCP/IP Sockets in Java Web site for book by Kenneth L. Calvert and Michael J. Donahoo. Has slides and example code from text.

Java Tutorial on Custom Networking

This is a good introduction to XML and writing Java programs to work with XML. You might also be interested in the home page of this web site, which has links a lot of tutorials about Java and other programming topics:

To read Chuck Allison's paper on reflection, go to his website: and click on the link for Java (under the link for Articles). The reflection paper is from August 2001 and the link for it is near the bottom of the page.