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

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $30.20
Usually ships in 1-2 business days
(Save 39%)
Other sellers (Paperback)
  • All (4) from $30.20   
  • New (2) from $32.00   
  • Used (2) from $30.20   

Overview

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.

Read More Show Less

Product Details

  • ISBN-13: 9780132761697
  • Publisher: Addison-Wesley
  • Publication date: 3/13/2013
  • Series: Java Series
  • Edition number: 5
  • Pages: 713
  • Sales rank: 334,823
  • Product dimensions: 7.00 (w) x 9.00 (h) x 1.60 (d)

Meet the Author

Sharon Biocca Zakhour is a principal technical writer at Oracle Corporation, and was formerly at Sun Microsystems. She has contributed to Java SE platform documentation for more than twelve years, including The Java Tutorial, Fourth Edition, (Addison-Wesley, 2007), and The JFC Swing Tutorial, Second Edition (Addison-Wesley, 2004). She graduated from the University of California, Berkeley, with a B.A. in computer science, and has worked as a programmer, developer support engineer, and technical writer for thirty years.

Sowmya Kannan was previously a principal technical writer at Oracle Corporation and Sun Microsystems. She is currently the manager of the Java SE documentation team, and has more than fifteen years of experience as a technical writer and developer of middleware and web applications.

Raymond Gallardo is a technical writer for Oracle Corporation. Previous engagements include college instructor, technical writer for IBM, and bicycle courier. He earned his B.Sc. in computer science and English from the University of Toronto and his M.A. in creative writing from The City College of New York.

Read More Show Less

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

PATH and CLASSPATH 535

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

JNLP API 638

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

Read More Show Less

Preface

Since the release of the original Java Development Kit in May of 1995, the engineering team at Sun Microsystems has been hard at work improving and enhancing the Java platform. The publication of this edition coincides with the release of Version 6 of the Java Platform Standard Edition (Java SE) and reflects the API of that release.

This edition introduces new features added to the Java platform since the publication of the third edition (under release 1.3), such as a chapter on Generics and information on annotations. There are new chapters on Java Web Start, The Platform Environment, and Regular Expressions. Most chapters, such as Concurrency (formerly Threads), I/O, Object-Oriented Programming Concepts, and Language Basics, have been completely rewritten. Collections has been brought out of the appendix and into its own chapter. A new appendix contains information on how to prepare for the Java Programming Language Certification exam.

All of the material has been thoroughly reviewed by members of engineering to ensure that the information is accurate and up to date.

Like the previous editions, this book is based on the online tutorial hosted at Sun Microsystems' Web site:

http://java.sun.com/docs/books/tutorial/

The information in this book is often referred to as "the core tutorial" or "the basics" that are required by most beginning to intermediate programmers. Once you have mastered the material in this book, you can explore the rest of the Java platform on the Web site.

As always, our goal is to create an easy-to-read practical programmer's guide with lots of examples to help people learn to program.

Who Should Read This Book?

This book is geared towards both novice and experienced programmers.

  • New programmers can benefit most from reading the book from beginning to end, including the step by step instructions for compiling and running your first program in Getting Started (page 1).
  • Programmers experienced with procedural languages such as C++ may wish to start with the material on object-oriented concepts and features of the Java programming language.
  • Experienced programmers may want to jump feet first into more advanced topics, such as generics, concurrency, or Java Web Start.

This book contains information to address the learning needs of programmers with various levels of experience.

How to Use This Book

This book is designed so you can read it straight through or skip around from topic to topic. The information is presented in a logical order, and forward references are avoided wherever possible.

The examples in this tutorial are compiled against the 6.0 release. You need to download this release in order to compile and run most examples.

The accompanying CD contains the content of this book (including examples, and solutions and answers to the questions and exercises), as well as the online-only Java SE tutorials, an early 6.0 release of the Java SE Development Kit (JDK), and the corresponding API specification and guide documentation.

You will see footnotes like the following:

docs/api/java/lang/Class.html

and

tutorial/deployment/applet/examples/TalkServer.java

The highest level of the CD contains docs and tutorial directories, so those footnotes can be located on the CD as specified. To locate the latest pages online, prepend http://java.sun.com/javase/6/ to the docs footnotes and http://java.sun.com/docs/books/ to the tutorial footnotes:

http://java.sun.com/javase/6/docs/api/java/lang/Class.html http://java.sun.com/docs/books/tutorial/deployment/applet/ examples/TalkServer.java

The chapters in this book can be found on the CD at the following locations:

Chapter 1. Getting Started: tutorial/getStarted
Chapter 2. Object-Oriented Programming Concepts: tutorial/java/concepts
Chapter 3. Language Basics: tutorial/java/nutsandbolts
Chapter 4. Classes and Objects: tutorial/java/javaOO
Chapter 5. Interfaces and Inheritance: tutorial/java/IandI
Chapter 6. Generics: tutorial/java/generics
Chapter 7. Packages: tutorial/java/package
Chapter 8. Numbers and Strings: tutorial/java/data
Chapter 9. Exceptions: tutorial/essential/exceptions
Chapter 10. Basic I/O: tutorial/essential/io
Chapter 11. Collections: tutorial/collections
Chapter 12. Concurrency: tutorial/essential/concurrency
Chapter 13. Regular Expressions: tutorial/essential/regex
Chapter 14. The Platform Environment: tutorial/essential/environment
Chapter 15. Swing: tutorial/ui
Chapter 16. Packaging Programs in JAR Files: tutorial/deployment/jar
Chapter 17. Java Web Start: tutorial/deployment/webstart
Chapter 18. Applets: tutorial/deployment/applet

We welcome feedback on this edition. Please use the Tutorial feedback form:
http://developers.sun.com/contact/tutorial_feedback.jsp

Read More Show Less

Customer Reviews

Average Rating 5
( 1 )
Rating Distribution

5 Star

(1)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted July 29, 2013

    This is a really a good book to purchase if you want an introduc

    This is a really a good book to purchase if you want an introduction tot he Java Language. I picked up this book after taking 2 semesters of learning the Java language, and thought this book was better tat discussing the topics. Its short, but it explain all the little nuances of the language like what static means in a method statement as well as in a variable statement. Those are some of the little things that get people. Classes, objects, and all the subtle details about them, such as polymorphism, encapsulations and such are explained really well. Also annotations and threads, two concepts that I had troubles with in school, were explained well. I wish they had covered network programming more indepth, since that is an area of programming that I enjoy--maybe they well cover it in a later book. But all in all, this was a well put together book and well worth the money to purchase. I would recommend this book to programmers who are getting into the Java language as well as non-programmers who well be new to Java. You can cut you study time and increase your learning of the language in a short period of time. I think it took me a few hours to cover the first three chapters. And maybe an hour or so for each additional chapter after that. The only chapter that took longer was the I/O and NIO, but you come out of that with a really solid understanding of the streaming objects as a whole. Good book. I'm certainly going to pick up the Java EE6 tutorial next.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)