Home > Store

Java Garage

Register your product to gain access to bonus material or receive a coupon.

Java Garage

Premium Website

  • Sorry, this book is no longer in print.
Not for Sale


  • Copyright 2005
  • Edition: 1st
  • Premium Website
  • ISBN-10: 0-321-24623-3
  • ISBN-13: 978-0-321-24623-3

Enter your Java Garage... where you do your work, not somebody else's. It's where you experiment, escape, tinker, and ultimately succeed.

Java Garage is not your typical Java book. If you're tired of monotonous "feature walks" and dull tutorials, put down those other Java books and pick up Java Garage. Java guru Eben Hewitt takes a fresh look at this popular programming language, providing the insight and guidance to turn the regular programmer into a master. The style is straightforward, thought-provoking and occasionally irreverent.

You'll learn the best ways to program with everything that matters: J2SE 5.0 classes, inheritance, interfaces, type conversions, event handling, exceptions, file I/O, multithreading, inner classes, Swing, JARs, etc. Hewitt provides real working code and instructions for making usable applications that you can exploit and incorporate into your own personal projects with ease. Need answers quickly? The book also includes FAQs for speedy reference and a glossary on steroids that gives you the context, not just the definition.

With Java Garage, you'll learn the best way to create and finish projects with finesse. Think 'zine. Think blog. But, please, do not think of any other Java book you have ever seen.


Author's Site

Untitled Document

Visit the Author's Web Site related to this title.

Sample Content

Online Sample Chapter

Why Java Interfaces Are So VERY Cool

Downloadable Sample Chapter

Download the Sample Chapter related to this title.

Table of Contents

1. What is the Java Garage.

2. Java Buzz.

3. Java Editions and Platforms.

4. Compiling and Running Java Applications.

    Installing the SDK.

    Compiling Source Code.

    Compiling into a Directory Other Than Your Source Directory.

    Running Programs.

    Setting the Classpath.

    Setting the Classpath at Compile Time.

    Setting the Path.

5. Where to Write Code.

    Integrated Development Environments.

6. Primitive Types.

    About Java Primitives.

    Integer Types.

    Real Numbers.


    Logical Representations.

7. Operators.

    Operator Precedence.

    Arithmetic Operators.

    Incrementing and Decrementing Operators.

    Relational Operators.

    Conditional Operators.

    Ternary Operator.

    Binary Numbers and Logical Operators.

    Shift Operators.

8. Control Statements.


    Switch/Case and Breaks.

    While Loop.

    Do-While Loop.

    For Loop.

    Complex For Loop.

    Nested For Loop.

    Continue and Labels.

    Enhanced For Loop (for each loop).

9. Classes.

    What Is a Class?

10. Fridge: Mmm-mmm Lamb Chops and a Manhattan.

11. Classes Reloaded.

    Using External Code in Your Programs:import.

    Constructing Objects.

    Using Enums.

    Methods Allow Variable-Length Parameter Lists.

    Wrapper Classes.


    The Class Named Class.

12. Inheritance.

    Getting Your Inheritance.

13. Strings.

    Creating String Objects.

    String References and Immutability.

    Doing Stuff with Strings.

    Character Data Encoding.

    Useful String Methods.

    Better Efficiency with StringBuffers.

14. Arrays.

    Creating Arrays.

    Using Arrays.

    Using Stacks.

    ArrayLists and toArray.

15. Documenting Your Code with Javadoc.

    Writing Javadoc Comments.

    Using Javadoc Tags.

    Using the Javadoc Tool.

    Changing Javadoc Styles.

    Generating Javadoc in Eclipse.

    Generating Javadoc with Ant.

16. Abstract Classes.

    Dude, Where's My Implementation?

    What Is an Abstract Class?

    Using Exceptions with Abstract Classes.

    Using an Abstract Class Polymorphically.

17. Interfaces.

    Some Reasons Why Interfaces Are Very Cool.

    How to Write an Interface.

    Interfaces Versus Abstract Classes.


    Interface Inheritance.

    Implementing Interfaces.

18. Casting and Type Conversions.


    Casting Between Primitives and Wrappers.

    Casting with Reference Types.

19. Inner Classes.

    Regular Inner Classes.

    Using Method Local Inner Classes.

    Using Anonymous Inner Classes.

    Static Inner Class.

20. Blog: Inner Classes and Event Handlers.

21 Handling Exceptions.


    What an Exception Is.

    Dealing with Exceptions.

    Built-in Exceptions.

    Throwing Exceptions.

    Catching Exceptions.

    Using Finally.

    Different Ways of Handling Exceptions.

    Wrapping an Exception.

    Toolkit:A Custom Exception.

    Exceptions and Inheritance.

    Exception Handling Pretty Good Practices.

22. File Input/Output.

    Files and Directories.


    File IO:Reading and Writing Stream Data.

    Readers and Writers.

23. Fridge: Guacamole.

24. Using Regular Expressions.

    Purpose of Regex.

25. Creating GUIs with Swing.

    Anatomy of a Swing App:Stuff You Typically Need to Do in Swing.

    Adding User Controls.

    User Controls.stepInto().

    Spacing and Aligning Components.



    LayoutManagers Overview.

    Switch (LAYOUT_MANAGERS) {.

    Handling Action Events.

    Creating Menus.

    A Note About Mixing Swing and AWT Components.

26. Blog Entry: Software Development Black Market.

27. Dates and Times.



28. Using Timer Tasks.

    Using TimerTask to Do Stuff at Intervals.

    Stopping a Timer Thread.

    Creating a Timer for a Swing GUI Application.

29. Applets.

    Differences Between Extending JApplet and Applet.

    Writing an Applet.

    A Few Applet Tricks.

30. Fridge: Big Daddy Flapjacks.

31. Using System and Runtime.

    Using the System.

    Forcing the Garbage Collector to Run.

    Suggesting Kindly That the Garbage Collector Run.

    Executing an External Application in Java.

    Interacting with the User.

    Toolkit: A Simple Calculator.

    Determine Number of Processors on the Current Machine.

    Determine When Your Application Is About to Exit.

    System Properties.

32. Using the Java Development Tools.

    Using Common SDK Tools.

    Discovering Other SDK Tools.

33. FAQ.

    Setting the CLASSPATH.

    Setting JAVA_HOME in Windows.

    Setting the PATH in Windows.

    Checking Current Java Version.

    Compiling and Running Programs.

    Primitive Data Types.

    Declaring and Initializing Variables.

    Class Definition.

    Package Declaration.

    Import Declaration.


    Defining and Implementing an Interface.


    Working with JARFiles.

    What Is the Java Virtual Machine?

    What's In the SDK?

34. Packaging & Deploying Java Applications.

    Herding Cats.

    Creating JARFiles with Eclipse.

    Creating an Icon for Your Java Application on Windows.

35. Toolkit.

    A Name Data Class.

    Credit Card Validator.


    Application:DrawingPad:Garage Doodler.

36. System.Exit.

    Java Glossary on Steroids.



Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership