Object-oriented Programming

in Java TM Textbook

I am using the text Object-oriented Programming in Java TM in my beginning computer programming course. It is aimed at students with little or no programming experience, and it uses DrJava as a vehicle for student experimentation object-oriented programming concepts.

Object-oriented Programming in Java is available under a Creative Commons license. Anyone is free to use this book under the following conditions:

Attribution . You must attribute the work in the manner specified by the author or licensor.

. You must attribute the work in the manner specified by the author or licensor. Noncommercial . You may not use this work for commercial purposes.

. You may not use this work for commercial purposes. No Derivative Works. You may not alter, transform, or build upon this work. For any reuse or distribution, you must make clear to others the license terms of this work.

Any of these conditions can be waived if you get permission from the copyright holder.

Currently the text is under extensive development, so you should check frequently for revisions. It has yet to be thoroughly proofread, so expect typographical and grammatical errors. These will disappear in time in future revisions. The exact sequence of chapters is subject to change as well.

Current version as of 13 March 2008

The following chapters are currently available:

The jar file for the simplified graphics classes is oopj.jar for Windows and Linux users. Mac users should instead download oopj_mac.jar. The current version of the simplified graphics classes is 0.5. To see if you have the current version, within DrJava's Interaction's environment type

edu.southern.computing.oopj.Viewport.VERSION

or see what the following Java program prints:

public class TestoopjVersion { public static void main(String[] args) { System.out.println(edu.southern.computing.oopj.Viewport.VERSION); } }

If the version is less than the current version indicated above (or you get an error about VERSION not existing), you should replace the current oopj.jar on your system.