Introduction. WEEK 1. THE JAVA LANGUAGE.
Day 1. Getting Started with Java. The Java Language. Object-Oriented Programming. Objects and Classes. Attributes and Behavior. Organizing Classes and Class Behavior. Summary. Q&A. Quiz. Exercises.
Day 2. The ABCs of Programming. Statements and Expressions. Variables and Data Types. Comments. Literals. Expressions and Operators. String Arithmetic. Summary. Q&A. Quiz. Exercises.
Day 3. Working with Objects. Creating New Objects. Accessing and Setting Class and Instance Variables. Calling Methods. References to Objects. Casting and Converting Objects and Primitive Types. Comparing Object Values and Classes. Summary. Q&A. Quiz. Exercises.
Day 4. Lists, Logic, and Loops. Arrays. Block Statements. if Conditionals. switch Conditionals. for Loops. while and do Loops. Breaking Out of Loops. Summary. Q&A. Quiz. Exercises.
Day 5. Creating Classes and Methods. Defining Classes. Creating Instance and Class Variables. Creating Methods. Creating Java Applications. Java Applications and Command-Line Arguments. Creating Methods with the Same Name, Different Arguments. Constructor Methods. Overriding Methods. Finalizer Methods. Summary. Q&A. Quiz. Exercises.
Day 6. Packages, Interfaces, and Other Class Features. Modifiers. Static Variables and Methods. Final Classes, Methods, and Variables. Abstract Classes and Methods. Packages. Using Packages. Creating Your Own Packages. Interfaces. Creating and Extending Interfaces. Inner Classes. Summary. Q&A. Quiz. Exercises.
Day 7. Threads, Exceptions, and Assertions. Exceptions. Managing Exceptions. Declaring Methods That Might Throw Exceptions. Creating and Throwing Your Own Exceptions. When and When Not to Use Exceptions. Assertions. Threads. Summary. Q&A. Quiz. Exercises.
WEEK 2. THE JAVA CLASS LIBRARY.
Day 8. Data Structures. Data Structures. Java Data Structures. Generics. Summary. Q&A. Quiz. Exercises.
Day 9. Working with Swing. Creating an Application. Working with Components. Lists. Summary. Q&A. Quiz. Exercises.
Day 10. Building a Swing Interface. Swing Features. Summary. Q&A. Quiz. Exercises.
Day 11. Arranging Components on a User Interface. Basic Interface Layout. Mixing Layout Managers. Card Layout. Grid Bag Layout. Summary. Q&A. Quiz. Exercises.
Day 12. Responding to User Input. Event Listeners. Working with Methods. Summary. Q&A. Quiz. Exercises.
Day 13. Using Color, Fonts, and Graphics. The Graphics2D Class. Drawing Text. Color. Drawing Lines and Polygons. Summary. Q&A. Quiz. Exercises.
Day 14. Writing Java Applets and Java Web Start Applications. How Applets and Applications Are Different. Applet Security Restrictions. Creating Applets. Including an Applet on a Web Page. Java Archives. Passing Parameters to Applets. Suns HTML Converter. Java Web Start. Using Java Web Start. Summary. Q&A. Quiz. Exercises.
WEEK 3. JAVA PROGRAMMING.
Day 15. Working with Input and Output. Introduction to Streams. Byte Streams. Filtering a Stream. Character Streams. Files and Filename Filters. Summary. Q&A. Quiz. Exercises.
Day 16. Serializing and Examining Objects. Object Serialization. Inspecting Classes and Methods with Reflection. Remote Method Invocation. Summary. Q&A. Quiz. Exercises.
Day 17. Communicating Across the Internet. Networking in Java. The java.nio Package. Summary. Q&A. Quiz. Exercises.
Day 18. JavaSound. JavaSound. Summary. Q&A. Quiz. Exercises.
Day 19. Creating and Using JavaBeans. Reusable Software Components. Development Tools. Working with JavaBeans. Summary. Q&A. Quiz. Exercises.
Day 20. Reading and Writing Data Using JDBC and XML. Java Database Connectivity. Using XML. Processing XML with Java. Processing XML with XOM. Summary. Q&A. Quiz. Exercises.
Day 21. Writing Java Servlets and JavaServer Pages. Using Servlets. Developing Servlets. JavaServer Pages. JSP Standard Tag Library. Summary. Q&A. Quiz. Exercises.
APPENDIXES.
Appendix A. Choosing Java. Javas Past, Present, and Future. Why Choose Java. Summary.
Appendix B. Using the Java 2 Software Development Kit. Choosing a Java Development Tool. Configuring the Software Development Kit. Using a Text Editor. Creating a Sample Program. Setting Up the CLASSPATH Variable.
Appendix C. Programming with the Java 2 Software Development Kit. An Overview of the SDK. The java Interpreter. The javac Compiler. The appletviewer Browser. The javadoc Documentation Tool. The jar Java File Archival Tool. The jdb Debugger. Using System Properties. Summary.
Appendix D. Using the NetBeans Integrated Development Environment. Choosing a Java Development Tool. Creating a Sample Program.
Appendix E. Writing Java 1.1 Applets. Java 1.1 Programming. Summary.
Appendix F. Creating Web Services with XML-RPC. Introduction to XML-RPC. Communicating with XML-RPC. Choosing an XML-RPC Implementation. Using an XML-RPC Web Service. Creating an XML-RPC Web Service. Summary.
Appendix G. Regular Expressions. Introduction to Pattern Matching. Using Regular Expressions. Patterns. Summary.
Appendix H. Where to Go from Here: Java Resources. Other Books to Consider. Suns Official Java Site. Other Java Web Sites. Java Newsgroups. Job Opportunities.
Appendix I. This Books Web Site. Index.