Notes


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, http://freshsources.com.

Professor Allison's Sample Code

Study guide for first test

Study guide for second test

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


The Java Tutorial
http://docs.oracle.com/javase/tutorial/index.html 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.

Exceptions.ppt

Arrays.ppt

DayEnum.java   A short example that demonstrates enums

Overloading-Ctors2.ppt Overloading constructors

Packages.ppt

OOP.ppt

Object-oriented Programming in Java
http://www.drdobbs.com/import-java/184403721 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.

Interfaces.ppt

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

Programming with Assertions
http://docs.oracle.com/javase/1.4.2/docs/guide/lang/assert.html
Oracle documentation about using assertions in Java

Javadoc
The home page for Javadoc is at http://java.sun.com/j2se/javadoc/ Detailed documentation (for the Windows platform) is at http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/javadoc.html

I/O Slides

The I/O part of The Java Tutorial
http://java.sun.com/docs/books/tutorial/essential/io/index.html

The Proxy Design Pattern
http://www.javaworld.com/javaworld/jw-02-2002/jw-0222-designpatterns.html
This JavaWorld paper by David Geary explains the proxy design pattern.

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

Revised collections slides: Collections2.ppt

The Java Tutorial section on Collections:
http://java.sun.com/docs/books/tutorial/collections/index.html

The Java Tutorial section on Generics:
http://java.sun.com/docs/books/tutorial/java/javaOO/generics.html

The Java Tutorial section on Object Ordering (Comparable and Comparator):
http://java.sun.com/docs/books/tutorial/collections/interfaces/order.html

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

Threads
Threads.ppt
New thread slides: threads2b.pptx

A JavaWorld article: "Multicore processing for client-side Java applications", by Kirill Grouchnikov
http://www.javaworld.com/javaworld/jw-09-2007/jw-09-multicoreprocessing.html

Network Programming

sockets.pptx

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

XML
http://www.ntu.edu.sg/home/ehchua/programming/java/J6d_xml.html
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: http://www.ntu.edu.sg/home/ehchua/programming/index.html

Reflection
To read Chuck Allison's paper on reflection, go to his website: www.freshsources.com 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.