Bleeding at the Keyboard
A Guide to Modern Programming with Java

Part I: Learning About Objects
* Chapter 1: Setting the Stage
* Chapter 2: Introducing the Players
* Chapter 3: Behind the Scenes
* Chapter 4: Character Study
* Chapter 5: Stage Direction
* Chapter 6: All Together Now
Part II: Learning About Types
* Chapter 7: It Takes All Types
* Chapter 8: What's in a Name?
* Chapter 9: Think Like an Object
* Chapter 10: Let the Games Begin
* Chapter 11: The Play's the Thing
Part III: Designing Programs
* Chapter 12: Networking
* Chapter 13: Defensive Programming
* Chapter 14: Design Patterns
* Chapter 15: Navel Gazing
* Chapter 16: Satori
Appendix 1: Avoiding Style Crime
Appendix 2: Java's Flaws
Appendix 3: Book Recommendations
Appendix 4: The Rest of Java

For review:

Brave New Words

Setting the Stage:
object, class, method, program, Java interpreter, inheritance, interface, design pattern.

Introducing the Players:
class, variable, value, type, state, behavior, reference value, reference variable, message, statement, method, reference variable, reference value, class, method, and variable naming conventions, declaration statement, boolean variable, int variable, double variable, boolean value, int value, double value, true, false, scope, local variable, global variable,

Behind the Scenes:
parameter, method execution, sending a message, type, return, new, assignment statement, operator, operand, main() method, dot operator, variable access, continuation line, comment, void, if, ".", "<=", "==", "/*", "*/", "//".

Character Study:
type, value, reference value, reference variable, reference type, boolean type, int type, double type, Class type, null, state, behavior, operator, operand, remainder, expression, boolean expression, int expression, double expression, type casting, (int), (double), (boolean), "+", "-", "*", "/", "%", "&&", "||", "!", "<", "<=", ">", ">=", "==", "!=".

Stage Direction:
state, behavior, type, encapsulation, variable initialization, constructor, signature, constant naming convention, class variable, class method, if-else, this, import, private, public, final, static, main().

All Together Now:
while, for, blocks, scope, increment operator, decrement operator, "++", "--", declaring variables in for loops, encapsulation, method overloading, method signature, String, string concatentation, operator overloading, arrays, array operator, "[]", packages, package access, package naming convention, package, the unnamed package.

It Takes All Types:
subclass, superclass, extends, super(), overriding methods, overloading methods, class Object, the equals() method, the toString() method, String, protected, interface, interface naming convention, implements, abstract method, abstract class.

What's in a Name?:
subtype, supertype, this, this(), super, super(), "([type name])", instanceof, reference casting, upcast, downcast.

Think Like an Object:
encapsulation, final method, final class, private constructor.

Let the Games Begin:
threads, Runnable, sleep(), exceptions, try, catch, Graphics, Component, paint().

This material was first developed for the Fall 1999 C212 class at Indiana University, Bloomington.

© Gregory J. E. Rawlins, 1999. email:
This site made entirely without adult supervision.