HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
Thoroughly entertaining, totally accessible, and completely up-to-date sixth edition of a Java classic.
° Part of Sun Microsystems Press; pre-publication publicity and promotion at JavaOne
° Goes beyond just the key features to provide the most accessible book for programmers coming to Java for the first time
° One of the first books to cover J2SE 1.5 -- and the changes to this spec are rather significant
The #1 introduction to J2SE 1.5 and enterprise/server-side development!
An international bestseller for eight years, Just Java 2 is the complete, accessible Java tutorial for working programmers at all levels. Fully updated and revised, this sixth edition is more than an engaging overview of Java 2 Standard Edition (J2SE 1.5) and its libraries: it’s also a practical introduction to today’s best enterprise and server-side programming techniques. Just Java 2, Sixth Edition, reflects both J2SE 1.5 and the latest Tomcat and servlet specifications. Extensive new coverage includes:
Peter van der Linden delivers expert advice, clear explanations, and crisp sample programs throughout—including dozens new to this edition. Along the way, he introduces:
All the book’s examples and sample programs are available at http://afu.com.
Static, Final, and Enumerated Types in Java
Preface.
Acknowledgments.
I. Language.
1. What Can Java Do for Me?What Java Does for You: Software Portability.
Why Portability Matters.
Language and Libraries.
One Size Doesn't Fit All.
Some Light Relief-A Java Desktop Application.
2. Introducing Objects.Downloading and Compiling Java.
What Is a Class?
What Is an Object?
Java Digital Clock Program.
Summary.
Exercises.
Some Light Relief-Napster and LimeWire.
3. Primitive Types, Wrappers, and Boxing.Literal Values.
boolean.
char.
int.
long.
byte.
short.
Limited Accuracy of Floating Point Types.
double.
float.
Object Wrappers for Primitives.
Autoboxing and Unboxing.
Performance Implications of Autoboxing.
java.lang.Object.
java.lang.String.
Language Support for String Concatenation.
String Comparison.
Some Light Relief-Hatless Atlas.
4. Statements and Comments.Organizing Statements.
Expression Statements.
Selection Statements.
Looping Statements.
Transfer of Control Statements.
Comments.
Reading the Java API.
Exercises.
Some Light Relief-MiniScribe: The Hard Luck Hard Disk.
5. OOP Part II-Constructors and Visibility.Polymorphism Is a Long Word for a Short Topic.
Creating New Objects: Constructors.
More About Methods.
Variable-Arity Methods.
Packages.
How the jdk Finds Classes.
Access Modifiers.
Exercises.
Some Light Relief-It's Not Your Father's IBM.
6. Static, Final, and Enumerated Types.What Field Modifier static Means.
What Field Modifier final Means.
Why Enumerate a Type?
Statements Updated for Enumerations.
More Complicated Enumerated Types.
Some Light Relief-The Haunted Zen Garden of Apple.
7. Names, Operators, and Accuracy.Keywords.
Punctuation Terminology.
Names.
Identifiers.
Expressions.
Arrays.
Operators.
Associativity.
How Accurate Are Calculations?
Widening and Narrowing Conversions.
What Happens on Overflow?
Some Light Relief-Furby's Brain Transplant.
8. More OOP-Extending Classes.Inheritance.
Polymorphism.
The Class Whose Name Is Class.
Exercises.
Some Light Relief-The Nerd Detection System.
9. Arrays.Understanding and Creating Arrays.
Arrays of Arrays.
Have Array Brackets, Will Travel.
The Math Package.
Some Light Relief-Think Big (and Small).
10. Exceptions.Run-time Internals: The Heap.
Garbage Collection.
Run-time Internals: The Stack.
Exceptions.
The Assert Statement.
Further Reading.
Some Light Relief-Making an Exception for You.
11. Interfaces.What Problem Does an Interface Solve?
Interface java.lang.Comparable.
Interfaces Versus Abstract Classes.
Granting Permission Through an Interface-Cloneable.
What Protected Really Means.
Using Interface Callbacks for GUI Event Handlers.
The Class Double.
Exercises.
Some Light Relief-The Java-Powered Toaster.
12. Nested Classes.Introduction to Nested Classes.
Nested Static Classes.
Inner Member Classes.
Inner Local Classes.
Inner Anonymous Classes.
How Inner Classes Are Compiled.
The Class Character.
Exercises.
Some Light Relief-The Domestic Obfuscated Java Code Non-Competition.
II. Key Libraries.
13. Doing Several Things at Once: Threads.What Are Threads?
Two Ways to Obtain a New Thread.
The Lifecycle of a Thread.
Thread Groups.
Four Kinds of Threads Programming.
Some Light Relief-The Motion Sensor Solution.
14. Advanced Thread Topics.Mutually Exclusive Threads.
Communicating Mutually Exclusive Threads.
Piped I/O for Threads.
Thread Local Storage.
Package java.util.concurrent.
An Aside on Design Patterns.
Further Reading.
Exercises.
Some Light Relief-Are You Certifiable? I Am.
15. Explanation <Generics>.Terminology Refresher: Parameters Versus Arguments.
The Problem that Generic Code Addresses.
What Generic Code Looks Like.
Generic Interfaces.
Bounds-Requiring a Type Parameter to Implement an Interface or Extend a Parent Class.
Some Light Relief-On Computable Numbers with an Application to the Entscheidungsproblem.
III. Server-side Java.
16. Collections.Collection API.
List, LinkedList, and ArrayList.
Set, HashSet, and SortedSet.
The Collections Helper Class.
Wildcard Parameters and Generic Methods.
Wildcarding a Generic Parameter.
Generic Methods.
Summary of Collection.
Map, HashMap, and TreeMap.
Exercises.
Some Light Relief-Early Names for Java.
17. Simple Input Output.Getting to Know Java I/O.
Design Philosophy.
The Class java.io.File.
Keyboard I/O.
Output.
Wrapping Additional Output Classes.
Input.
Reader Wrappers.
Inputting ASCII Characters and Binary Values.
Input Stream Wrappers.
Further Reading.
Exercises.
Some Light Relief-The Illegal Prime Number!
18. Advanced Input Output.Random Access File.
Running Commands and Getting Output From Them.
Formatted String Output.
Writing Objects to Disk.
New I/O Package.
Memory Mapped I/O.
File Locking.
Charsets and Endian-ness.
Exercises.
Some Light Relief-The Illegal T-shirt!.
IV. Client Java.
19. Regular Expressions.Regular Expressions And Pattern Matching.
Calendar Utilities.
Other Utility Classes.
Further Reading.
Exercises.
Some Light Relief-Exchanging Apples And Crays.
20. GUI Basics and Event Handling.All About Event Handling.
Tips for Slimming Down Handler Code.
Summary of Event Handling.
Exercises.
Some Light Relief-The Mouse That Roared.
21. JFC and the Swing Package.Java Foundation Classes.
All About Controls (JComponents).
Swing Threads-A Caution!
Swing Components.
More About Swing Components.
Further Reading.
Exercises.
Some Light Relief-The Bible Code.
22. Containers, Layouts, and AWT Loose Ends.Pluggable Look and Feel.
All About Containers.
Layout in a Container.
Tying up the Loose Ends.
Exercises.
Some Light Relief-Sky View Cafe: A High Quality Applet.
V. Enterprise Java.
23. Relational Databases and SQL.Introduction to Relational Databases.
Primary and Foreign Keys.
Relationships.
Normal Forms.
Relational Database Glossary.
Download and Install Mckoi.
Basic SQL Primer.
Creating and Populating Tables.
Querying and Retrieving Data.
Subquery Selections.
Result Set of a SELECT Query.
Updating Values.
Deleting Records and Tables.
SQL Prepared Statements and Stored Procedures.
Exercises.
Some Light Relief-Reading the Docs.
24. JDBC.Introduction to JDBC.
Installing the Mckoi Database Software.
Running the Example Code.
Connecting to the Database.
Executing SQL Statements.
Result Sets.
Batching SQL Statements and Transactions.
Prepared Statements and Stored Procedures.
Complete Example.
Database and Result Set Metadata.
Further Reading.
Exercises.
Heavy Light Relief-In Which "I" Spam Myself.
25. Networking in Java.Everything You Need To Know about TCP/IP but Failed to Learn in Kindergarten.
A Client Socket in Java.
Sending Email by Java.
A Server Socket in Java.
HTTP and Web Browsing: Retrieving HTTP Pages.
A Multithreaded HTTP Server.
A Mapped I/O HTTP Server.
Further Reading.
Exercises.
Some Light Relief-500 Mile Limit on Email.
26. Servlets and JSP.Overview of Servlets and JSP.
Why Use Servlets?
Releases and Versions.
Installing the Tomcat Software.
Running the Example Servlets.
Ports and Protocols.
The HTML to Invoke a Servlet.
A Servlet and Its Request/Response.
Servlet Request.
Response to a Servlet Request.
Writing Your Own Servlet.
Servlet Operating Cycle and Threading.
Java Server Pages.
Java Beans in Servlets and JSP.
Last Words on JSP, Beans, and Tag Libraries.
Further Reading.
Exercises.
Some Light Relief-Using Java to Stuff an Online Poll.
27. XML and Java.XML Versus HTML.
Some Rules of XML.
The Document Type Definition (DTD).
What Is XML Used For?
XML Versions and Glossary.
JAXP Library Contents.
Reading XML With DOM Parsers.
A Program That Uses a DOM Parser.
Reading an XML File-SAX Parsers.
A Program That Uses a SAX Parser.
The Factory Design Pattern.
Design Pattern Summary.
Other Java XML Notes.
Further Reading.
Exercises.
Some Light Relief-View Source on Kevin's Life.
28. Web Services at Google and Amazon.Web Services Introduction.
Google Web Services.
Amazon Web Services.
Conclusions.
Some Light Relief-Googlewhacking.
Appendix A: Downloading Java.
Download the Index
file related to this title.