Please
keep in mind that the resources listed on this page are here for supplemental
purposes only. Your primary resources for this course are the lecture
notes and the Savitch textbook; in case of any differences on homeworks
or tests, the lecture notes and Savitch will be the authority. However,
we realize that some of you will benefit from access to wider resources,
so we encourage you to peruse these.

You will generally find that articles from JavaWorld
(http://www.javaworld.com) are well-written and reliable. We also encourage
you to register for Sun's Java
Developer's Connection (http://developer.java.sun.com), which is free
and gives you access to numerous on-line articles, book chapters, discussion
lists, tutorials, etc.

General Resources

The
Java Tutorial(http://java.sun.com/tutorial/index.html)
This is the standard Sun reference and teaching tool - there's
a tremendous amount in here, including lots of example code. To
find specific topics, click on the TOC (Table of Contents) button
and search the index. Some specific items will also be linked
in the other sections listed on this page.

Brewing
Java: A Tutorialby Elliott R. Harold (http://www.ibiblio.org/javafaq/javatutorial.html)
This is a now out-of-print book, but still has some valuable basic
material in it. You'll see other books by this author on O'Reilly's
website.

Interactive
Programming in Javaby Lynn Andrea Stein
(http://www-cs101.ai.mit.edu/ipij/)
Ms. Stein is a professor at MIT; this book is a reworking of her
introductory course there, and focuses on interactive understanding
rather than simply computation.

Java
Ranch(http://www.javaranch.com/index.html)
This site has a wide variety of interesting things for newcomers
to Java. You can test yourself on your knowledge of Java with
the Rules Roundup; learn concepts with a twist from the Campfire
Stories; write beautiful code with the Style Guide at the Chicken
Coop; and solve your coding concerns by reading through Grannie's
Pearls of Wisdom.

Object-Oriented
Articles

A
Trip To Objectville (PDF)(http://www.oreilly.com/
catalog/hfjava2/chapters/ch02.pdf)from Head
First Java, 2nd Ed., by Kathy Sierra and Bert Bates, O'Reilly & Co.Serious Polymorphism (PDF) (http://www.oreilly.com/
catalog/hfjava2/chapters/ch08.pdf), from Head
First Java, 2nd Ed., by Kathy Sierra and Bert Bates, O'Reilly & Co.
An
Object-Oriented Bedtime Storyby Joseph
Bergin (http://csis.pace.edu/~bergin/Java/OOStory.html)
This article, from the author of Karel++, explains with clear
examples how to think of objects in Java.Everything
Is An Objectby Bruce Eckel(http://www.javaworld.com/javaworld/jw-09-2000/jw-0908-eckelobjects_p.html)
This article is a really good reference for people coming from
C++, and also has a very helpful discussion of storage and where
things live in memory. Bruce has a book, Thinking
In Java, on his website,
which includes lots of good example code.

Learn
Java from the Ground Up, Part 1 , by Jacob Weintraub
(http://www.javaworld.com/javaworld/jw-03-2000/jw-0331-java101_p.html)
Jacob takes a slightly different approach to OOP, reviewing some
info on getting started with Java, and then using an object class
which is developed through the three part series. This sets up
the overall class...

Learn
How to Store Data in Objects, Part 2 , by Jacob
Weintraub (http://www.javaworld.com/javaworld/jw-07-2000/jw-0707-java101_p.html)
In this article, Jacob continues with variables, scope, methods,
and data encapsulation - very important concepts. The class begins
to get some instance members.

Class
Action , Part 3 , by Jacob Weintraub (http://www.javaworld.com/javaworld/jw-09-2000/jw-0901-java101_p.html)
Jacob wraps up the series covering access modifiers, constructors and overloading.
We now see a fully functional object which can be used alone or in other classes.

Objects
and Classes (from the Java Certification Study Guide),
by Roberts, Heller, and Ernest (http://developer.java.sun.com/developer/Books/certification/page1.html)
If you really want the full scoop, this article will give it to you. Inner classes,
anonymous classes, encapsulation, etc...

Modeling
the Static/Dynamic Aspects of a System, from Beginning
Java Objects, Ch. 10, by Jacquie Barker (PDF format,
258 KB) (http://java.sun.com/developer/Books/javaprogramming/
begobjects/)
This article discusses how to create and design programs and complex applications;
it also explains basic UML (Unified Modeling Language) concepts to show the overall
structure and functioning of the program.