Introduction to computers, the Internet and the Web -- Introduction to Java applications -- Introduction to classes and objects -- Control statements: part 1 -- Control statements: part 2 -- Methods: a deeper look -- Arrays -- Classes and objects: a deeper look -- Object-oriented programming: inheritance -- Object-oriented programming: polymorphism -- GUI components: part 1 -- Graphics and Java 2D -- Exception handling -- Files and streams -- Recursion -- Searching and sorting -- Data structures -- Generics -- Collections -- Introduction to Java applets -- Multimedia: applets and applications -- GUI components: part 2 -- Multithreading -- Networking -- Accessing databases with JDBC -- Web applications: part 1 -- Web applications: part 2 -- JAX-WS Web services -- Formatted output -- Strings, characters and regular expressions -- A. Operator precedence chart -- B. ASCII character set -- C. Keywords and reserved words -- D. Primitive types -- E. Number systems -- F. GroupLayout -- G. Java desktop integration components (JDIC) -- H. Mashups -- Web bonus appendices -- I. Unicode -- J. Using the Java API documentation -- K. Creating documentation with javadoc -- L. Bit manipulation -- M. ATM case study code -- N. Labeled break and continue statements -- O. UML 2: additional diagram types -- P. Design patterns -- Q. Using the debugger.