Contents Chapter 1 An Introduction to Java Java as Programming Platform The Java “White Paper”Buzzwords Java and the Internet A Short History of Java Common Misconceptions About Java Chapter 2 The Java Programming Environment Installing the Java Deveioment Kit Choosing a Development Environment Using the Command-Line Using an Integrated Development Environment Compiling and Running Programs from a Text Editor Running a Graphical Application Building and Running Applets Chapter 3 Fundamental Programming Structures in Java A Simple Java Program Comments Data Types Variables Operators Strings Input and Output Control Flow Big Numbers Arrays Chajpter 4 Objects and Classes Introduction to Object-Oriented Programming Using Predefined Classes Defining Your Own Classes Static Fields and Methods Method Parameters Object Construction Packages Documentation Comments Class Design Hints Chater 5 Inheritance Classes,Superclasses,and Subclasses Object:The Cosmic Superclass Generic Array Lists Object Wrappers and Autoboxing Reflection Enumeration Classes Design Hints for Inheritance Chapter 6 Interfaces and Inner Classes Interfaces Object Cloning Interfaces and Callbacks Inner Classes Proxies Chapter 7 Graphics Programming Introducing Swing Creating a Frame Positioning a Frame Displaying Information in a Panel Working with 2D Shapes Using Color Using Special Fonts for Text Doing More with Images Chapter 8 Event Handling Basics of Event Handling The AWT Event Hierarchy Semantic and Low-Level Events in the AWT Low-Level Event Types Actions Multicasting Implementing Event Sources Chapter 9 User Interface Components with Swing The Model-View-Controller Design Pattern Introduction to Layout Management Text Input Choice Components Menus Sophisticated Layout Management Dialog Boxes Chapter 10 Deploying Applets and Applications Applet Basics The Applet HTML Tags and Atributes Multimedia The Applet Context JAR Files Application Packaging Java Web Start Storage of Application references Chapter 11 Exceptions and Debugging Dealing with Errors Catching Exceptions Tips for Using Exceptions Logging Using Assertions Debugging Techniques Using a Debugger Chapter 12 Streams and Files Streams The Complete Stream Zoo ZIP File Streams Use of Streams Object Streams File Management New I/O Regular Expressions Chapter 13 Generic Programming Why Generic Programming? Definition of a Simple Generic Class Generic Methods Bounds for Type Variables Generic Code and the Virtual Machine Restrictions and Limitations Inheritance Rules for Generic Types Wildcard Types Reflection and Generics Appendix A Java Keywords Appendix B Retrofitting JDK5.0 Code Enhanced for Loop Generic Array Lists Variable Parameter Lists Covariant Return Types Static Import Console Input Formatted Output Unicode Code Points Building Strings Index