Home > Store

Java Tutorial, The: A Short Course on the Basics, 5th Edition

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

Java Tutorial, The: A Short Course on the Basics, 5th Edition

eBook (Watermarked)

  • Your Price: $31.99
  • List Price: $39.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.


  • Copyright 2013
  • Dimensions: 7" x 9-1/8"
  • Edition: 5th
  • eBook (Watermarked)
  • ISBN-10: 0-13-276199-8
  • ISBN-13: 978-0-13-276199-4

The Java®Tutorial, Fifth Edition, is based on Release 7 of the Java Platform Standard Edition. This revised and updated edition introduces the new features added to the platform, including a section on NIO.2, the new file I/O API, and information on migrating legacy code to the new API. The deployment coverage has also been expanded, with new chapters such as “Doing More with Rich Internet Applications” and “Deployment in Depth,” and a section on the fork/join feature has been added to the chapter on concurrency. Information reflecting Project Coin developments, including the new try-with-resources statement, the ability to catch more than one type of exception with a single exception handler, support for binary literals, and diamond syntax, which results in cleaner generics code, has been added where appropriate. The chapters covering generics, Java Web Start, and applets have also been updated. In addition, if you plan to take one of the Java SE 7 certification exams, this guide can help. A special appendix, “Preparing for Java Programming Language Certification,” lists the three exams available, details the items covered on each exam, and provides cross-references to where more information about each topic appears in the text. All of the material has been thoroughly reviewed by members of Oracle Java engineering to ensure that the information is accurate and up to date.

Sample Content

Table of Contents

Preface xxi

About the Authors xxv

Chapter 1: Getting Started 1

The Java Technology Phenomenon 1

The “Hello World!” Application 5

A Closer Look at the “Hello World!” Application 22

Common Problems (and Their Solutions) 25

Compiler Problems 25

Runtime Problems 27

Questions and Exercises: Getting Started 29

Chapter 2: Object-Oriented Programming Concepts 31

What Is an Object? 32

What Is a Class? 34

What Is Inheritance? 36

What Is an Interface? 37

What Is a Package? 38

Questions and Exercises: Object- Oriented Programming Concepts 38

Chapter 3: Language Basics 41

Variables 42

Operators 55

Expressions, Statements, and Blocks 65

Control Flow Statements 68

Chapter 4: Classes and Objects 85

Classes 86

Objects 98

More on Classes 106

Nested Classes 120

Enum Types 126

Annotations 129

Chapter 5: Interfaces and Inheritance 135

Interfaces 135

Inheritance 143

Chapter 6: Generics 163

Why Use Generics? 164

Generic Types 164

Generic Methods 170

Bounded Type Parameters 171

Generics, Inheritance, and Subtypes 173

Type Inference 176

Wildcards 179

Type Erasure 188

Restrictions on Generics 196

Questions and Exercises: Generics 200

Chapter 7: Packages 203

Creating a Package 205

Naming a Package 206

Using Package Members 207

Managing Source and Class Files 211

Questions and Exercises: Creating and Using Packages 214

Chapter 8: Numbers and Strings 217

Numbers 217

Characters 234

Strings 236

Questions and Exercises: Characters and Strings 254

Chapter 9: Exceptions 257

What Is an Exception? 258

The Catch or Specify Requirement 258

Catching and Handling Exceptions 261

Specifying the Exceptions Thrown by a Method 272

How to Throw Exceptions 273

Unchecked Exceptions: The Controversy 279

Advantages of Exceptions 280

Summary of Exceptions 285

Questions and Exercises: Exceptions 285

Chapter 10: Basic I/O and NIO.2 289

I/O Streams 289

File I/O (Featuring NIO.2) 309

Summary of Basic I/O and NIO.2 366

Questions and Exercises: Basic I/O and NIO.2 368

Chapter 11: Collections 371

Introduction to Collections 372

Interfaces 374

Implementations 418

Algorithms 432

Custom Collection Implementations 437

Interoperability 440

Chapter 12: Concurrency 445

Processes and Threads 446

Thread Objects 447

Synchronization 453

Liveness 459

Guarded Blocks 461

Immutable Objects 465

High-Level Concurrency Objects 469

Questions and Exercises: Concurrency 480

Chapter 13: Regular Expressions 483

Introduction 484

Test Harness 485

String Literals 486

Character Classes 488

Predefined Character Classes 492

Quantifiers 495

Capturing Groups 500

Boundary Matchers 502

Methods of the Pattern Class 504

Methods of the Matcher Class 509

Methods of the PatternSyntaxException Class 515

Unicode Support 517

Additional Resources 518

Questions and Exercises: Regular Expressions 519

Chapter 14: The Platform Environment 521

Configuration Utilities 521

System Utilities 529


Questions and Exercises: The Platform Environment 540

Chapter 15: Packaging Programs in JAR Files 541

Using JAR Files: The Basics 542

Working with Manifest Files: The Basics 553

Signing and Verifying JAR Files 560

Using JAR-Related APIs 567

Questions: Packaging Programs in JAR Files 573

Chapter 16: Java Web Start 575

Developing a Java Web Start Application 576

Deploying a Java Web Start Application 579

Displaying a Customized Loading Progress Indicator 581

Running a Java Web Start Application 585

Java Web Start and Security 586

Common Java Web Start Problems 587

Questions and Exercises: Java Web Start 588

Chapter 17: Applets 591

Getting Started with Applets 591

Doing More with Applets 603

Displaying a Customized Loading Progress Indicator 618

Solving Common Applet Problems 632

Questions and Exercises: Applets 633

Chapter 18: Doing More with Java Rich Internet Applications 635

Setting Trusted Arguments and Secure Properties 635


Cookies 643

Customizing the Loading Experience 646

Security in RIAs 646

Questions and Exercises: Doing More with Java Rich Internet Applications 647

Chapter 19: Deployment in Depth 649

Deployment Toolkit 649

Java Network Launch Protocol 659

Deployment Best Practices 667

Questions and Exercises: Deployment In Depth 673

Appendix: Preparing for Java Programming Language Certification 675

Programmer Level I Exam 675

Programmer Level II Exam 680

Java SE 7 Upgrade Exam 688

Index 693


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership