Table of Contents
PART I: Getting Started
Hour 1: Becoming a Programmer
Choosing a Language
Telling the Computer What to Do
How Programs Work
When Programs Don’t Work
Choosing a Java Programming Tool
Installing a Java Development Tool
Hour 2: Writing Your First Program
What You Need to Write Programs
Creating the Saluton Program
Beginning the Program
Storing Information in a Variable
Saving the Finished Product
Compiling the Program into a Class File
Fixing Errors
Running a Java Program
Hour 3: Vacationing in Java
First Stop: Oracle
Going to School with Java
Lunch in JavaWorld
Watching the Skies at NASA
Getting Down to Business
Stopping by SourceForge for Directions
Running Java on Your Phone
Hour 4: Understanding How Java Programs Work
Creating an Application
Sending Arguments to Applications
The Java Class Library
PART II: Learning the Basics of Programming
Hour 5: Storing and Changing Information in a Program
Statements and Expressions
Assigning Variable Types
Naming Your Variables
Storing Information in Variables
All About Operators
Using Expressions
Hour 6: Using Strings to Communicate
Storing Text in Strings
Displaying Strings in Programs
Using Special Characters in Strings
Pasting Strings Together
Using Other Variables with Strings
Advanced String Handling
Presenting Credits
Hour 7: Using Conditional Tests to Make Decisions
if Statements
if-else Statements
switch Statements
The Ternary Operator
Watching the Clock
Hour 8: Repeating an Action with Loops
for Loops
while Loops
do-while Loops
Exiting a Loop
Naming a Loop
Testing Your Computer Speed
PART III: Working with Information in New Ways
Hour 9: Storing Information with Arrays
Creating Arrays
Using Arrays
Multidimensional Arrays
Sorting an Array
Counting Characters in Strings
Hour 10: Creating Your First Object
How Object-Oriented Programming Works
Objects in Action
What Objects Are
Understanding Inheritance
Building an Inheritance Hierarchy
Converting Objects and Simple Variables
Creating an Object
Hour 11: Describing What Your Object Is Like
Creating Variables
Creating Class Variables
Creating Behavior with Methods
Putting One Class Inside Another
Using the this Keyword
Using Class Methods and Variables
Hour 12: Making the Most of Existing Objects
The Power of Inheritance
Establishing Inheritance
Working with Existing Objects
Storing Objects of the Same Class in Array Lists
Creating a Subclass
PART IV: Programming a Graphical User Interface
Hour 13: Building a Simple User Interface
Swing and the Abstract Windowing Toolkit
Using Components
Hour 14: Laying Out a User Interface
Using Layout Managers
Laying Out an Application
Hour 15: Responding to User Input
Getting Your Programs to Listen
Setting Up Components to Be Heard
Handling User Events
Completing a Graphical Application
Hour 16: Building a Complex User Interface
Sliders
Change Listeners
Using Image Icons and Toolbars
Tables
PART V: Moving into Advanced Topics
Hour 17: Storing Objects in Data Structures
Array Lists
Hash Maps
Hour 18: Handling Errors in a Program
Exceptions
Throwing Exceptions
Throwing and Catching Exceptions
Hour 19: Creating a Threaded Program
Threads
Working with Threads
The Constructor
Catching Errors as You Set Up URLs
Starting the Thread
Handling Mouse Clicks
Displaying Revolving Links
Hour 20: Using Inner Classes and Closures
Inner Classes
Closures
PART VI: Writing Internet Applications
Hour 21: Reading and Writing Files
Streams
Writing Data to a Stream
Reading and Writing Configuration Properties
Hour 22: Creating Web Services with JAX-WS
Defining a Service Endpoint Interface
Creating a Service Implementation Bean
Publishing the Web Service
Using Web Service Definition Language Files
Creating a Web Service Client
Hour 23: Creating Java2D Graphics
Using the Font Class
Using the Color Class
Creating Custom Colors
Drawing Lines and Shapes
Baking a Pie Graph
Hour 24: Writing Android Apps
Introduction to Android
Creating an Android App
Running the App
Designing a Real App
PART VII: Java Game Programming (Barnes & Noble Exclusive Edition Only)
Hour 25: Creating Minecraft Mods with Java
Setting Up a Minecraft Server
Connecting to the Server
Creating Your First Mod
Teaching Zombies to Ride Horses
Finding All Mobs (and Killing Them)
Writing a Mod That Can Build Things
Appendixes
Appendix A: Using the NetBeans Integrated Development Environment
Appendix B: Where to Go from Here: Java Resources
Appendix C: This Book’s Website
Appendix D: Setting Up an Android Development Environment