Author's note

Elemental Java represents a new approach in teaching Java. It introduces data modeling as a first-class concern. The first unit teaches all the major elements of the Java type language. Students use it to create abstract models of the “game state”—the core data structures—of well-known games. Game state is at the center of the “game cycle,” which is an abstract model of the basic cycle followed by all games. Implementing the game cycle for specific games motivates other elements of the the Java programming language. Having a clear idea a game's core data structures, and the Java type language they are expressed in, makes learning the other elements of the Java language more straightforward.

Comments welcome

If you find find mistakes I'd be very grateful if you would send me an email to me at jonathan.munson@mville.edu. Use the subject “EJ mistake” if you think you found a mistake. I'd also be glad to hear any other kind of comments. Use the subject “EJ comment” if you have a comment. Please refer to the unit and section in your email. And if you are using the online version of Elemental Java, you may use the “Leave comment” feature in the sidebar.

—Jonathan Munson, Manhattanville College, Purchase, New York