The java programming language, 4th edition (2005)

1.3K 205 1
The java programming language, 4th edition (2005)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

THE Java™ Programming Language, Fourth Edition By Ken Arnold, James Gosling, David Holmes Publisher: Addison Wesley Professional Pub Date: August 17, 2005 ISBN: 0-321-34980-6 Pages: 928 Table of Contents | Index Direct from the creators of the Java™ programming language, the completely revised fourth edition of The Java™ Programming Language is an indispensable resource for novice and advanced programmers alike Developers around the world have used previous editions to quickly gain a deep understanding of the Java programming language, its design goals, and how to use it most effectively in real-world development Now, Ken Arnold, James Gosling, and David Holmes have updated this classic to reflect the major enhancements in Java™ 2 Standard Edition 5.0 (J2SE™ 5.0) The authors systematically cover most classes in Java's main packages, java.lang.*, java.util, and java.io, presenting in-depth explanations of why these classes work as they do, with informative examples Several new chapters and major sections have been added, and every chapter has been updated to reflect today's best practices for building robust, efficient, and maintainable Java software Key changes in this edition include New chapters on generics, enums, and annotations, the most powerful new language features introduced in J2SE 5.0 Changes to classes and methods throughout to reflect the addition of generics Major new sections on assertions and regular expressions Coverage of all the new language features, from autoboxing and variable argument methods to the enhanced for-loop and covariant return types Coverage of key new classes, such as Formatter and Scanner The Java™ Programming Language, Fourth Edition, is the definitive tutorial introduction to the Java language and essential libraries and an indispensable reference for all programmers, including those with extensive experience It brings together insights you can only get from the creators of Java: insights that will help you write software of exceptional quality THE Java™ Programming Language, Fourth Edition By Ken Arnold, James Gosling, David Holmes Publisher: Addison Wesley Professional Pub Date: August 17, 2005 ISBN: 0-321-34980-6 Pages: 928 Table of Contents | Index Copyright The Java™ Series Preface About This Book Examples and Documentation Acknowledgments (Fourth Edition) Acknowledgments (Third Edition) Acknowledgments (Second Edition) Acknowledgments (First Edition) Chapter 1 A Quick Tour Section 1.1 Getting Started Section 1.2 Variables Section 1.3 Comments in Code Section 1.4 Named Constants Section 1.5 Unicode Characters Section 1.6 Flow of Control Section 1.7 Classes and Objects Section 1.8 Methods and Parameters Section 1.9 Arrays Section 1.10 String Objects Section 1.11 Extending a Class Section 1.12 Interfaces Section 1.13 Generic Types Section 1.14 Exceptions Section 1.15 Annotations Section 1.16 Packages Section 1.17 The Java Platform Section 1.18 Other Topics Briefly Noted Chapter 2 Classes and Objects Section 2.1 A Simple Class Section 2.2 Fields Section 2.3 Access Control Section 2.4 Creating Objects Section 2.5 Construction and Initialization Section 2.6 Methods Section 2.7 this Section 2.8 Overloading Methods Section 2.9 Importing Static Member Names Section 2.10 The main Method Section 2.11 Native Methods Chapter 3 Extending Classes Section 3.1 An Extended Class Section 3.2 Constructors in Extended Classes Section 3.3 Inheriting and Redefining Members Section 3.4 Type Compatibility and Conversion Section 3.5 What protected Really Means Section 3.6 Marking Methods and Classes final Section 3.7 Abstract Classes and Methods Section 3.8 The Object Class Section 3.9 Cloning Objects Section 3.10 Extending Classes: How and When Section 3.11 Designing a Class to Be Extended Section 3.12 Single Inheritance versus Multiple Inheritance Chapter 4 Interfaces Section 4.1 A Simple Interface Example Section 4.2 Interface Declarations Section 4.3 Extending Interfaces Section 4.4 Working with Interfaces Section 4.5 Marker Interfaces Section 4.6 When to Use Interfaces Chapter 5 Nested Classes and Interfaces Section 5.1 Static Nested Types Section 5.2 Inner Classes Section 5.3 Local Inner Classes Section 5.4 Anonymous Inner Classes Section 5.5 Inheriting Nested Types Section 5.6 Nesting in Interfaces Section 5.7 Implementation of Nested Types Chapter 6 Enumeration Types Section 6.1 A Simple Enum Example Section 6.2 Enum Declarations Section 6.3 Enum Constant Declarations Section 6.4 java.lang.Enum Section 6.5 To Enum or Not Chapter 7 Tokens, Values, and Variables Section 7.1 Lexical Elements Section 7.2 Types and Literals Section 7.3 Variables Section 7.4 Array Variables Section 7.5 The Meanings of Names Chapter 8 Primitives as Types Section 8.1 Common Fields and Methods Section 8.2 Void Section 8.3 Boolean Section 8.4 Number Section 8.5 Character Section 8.6 Boxing Conversions Chapter 9 Operators and Expressions Section 9.1 Arithmetic Operations Section 9.2 General Operators Section 9.3 Expressions Section 9.4 Type Conversions Section 9.5 Operator Precedence and Associativity Section 9.6 Member Access Chapter 10 Control Flow Section 10.1 Statements and Blocks Section 10.2 ifelse Section 10.3 switch Section 10.4 while and dowhile Section 10.5 for Section 10.6 Labels Section 10.7 break Section 10.8 continue Section 10.9 return Section 10.10 What, No goto? Chapter 11 Generic Types Section 11.1 Generic Type Declarations Section 11.2 Working with Generic Types Section 11.3 Generic Methods and Constructors Section 11.4 Wildcard Capture Section 11.5 Under the Hood: Erasure and Raw Types Section 11.6 Finding the Right Method Revisited Section 11.7 Class Extension and Generic Types Chapter 12 Exceptions and Assertions Section 12.1 Creating Exception Types Section 12.2 throw Section 12.3 The throws Clause Section 12.4 try, catch, and finally Section 12.5 Exception Chaining Section 12.6 Stack Traces Section 12.7 When to Use Exceptions Section 12.8 Assertions Section 12.9 When to Use Assertions Section 12.10 Turning Assertions On and Off Chapter 13 Strings and Regular Expressions Section 13.1 Character Sequences Section 13.2 The String Class Section 13.3 Regular Expression Matching Section 13.4 The StringBuilder Class Section 13.5 Working with UTF-16 Chapter 14 Threads Section 14.1 Creating Threads Section 14.2 Using Runnable Section 14.3 Synchronization Section 14.4 wait, notifyAll, and notify Section 14.5 Details of Waiting and Notification Section 14.6 Thread Scheduling Section 14.7 Deadlocks Section 14.8 Ending Thread Execution Section 14.9 Ending Application Execution Section 14.10 The Memory Model: Synchronization and volatile Section 14.11 Thread Management, Security, and ThreadGroup Section 14.12 Threads and Exceptions Section 14.13 ThreadLocal Variables Section 14.14 Debugging Threads Chapter 15 Annotations Section 15.1 A Simple Annotation Example Section 15.2 Annotation Types Section 15.3 Annotating Elements Section 15.4 Restricting Annotation Applicability Section 15.5 Retention Policies Section 15.6 Working with Annotations Chapter 16 Reflection Section 16.1 The Class Class Section 16.2 Annotation Queries Section 16.3 The Modifier Class Section 16.4 The Member classes Section 16.5 Access Checking and AccessibleObject Section 16.6 The Field Class Section 16.7 The Method Class Section 16.8 Creating New Objects and the Constructor Class Section 16.9 Generic Type Inspection Section 16.10 Arrays Section 16.11 Packages Section 16.12 The Proxy Class Section 16.13 Loading Classes Section 16.14 Controlling Assertions at Runtime Chapter 17 Garbage Collection and Memory Section 17.1 Garbage Collection Section 17.2 A Simple Model Section 17.3 Finalization Section 17.4 Interacting with the Garbage Collector Section 17.5 Reachability States and Reference Objects Chapter 18 Packages Section 18.1 Package Naming Section 18.2 Type Imports Section 18.3 Package Access Section 18.4 Package Contents Section 18.5 Package Annotations Section 18.6 Package Objects and Specifications Chapter 19 Documentation Comments Section 19.1 The Anatomy of a Doc Comment Section 19.2 Tags Section 19.3 Inheriting Method Documentation Comments Section 19.4 A Simple Example Section 19.5 External Conventions Section 19.6 Notes on Usage Chapter 20 The I/O Package Section 20.1 Streams Overview Section 20.2 Byte Streams Section 20.3 Character Streams Section 20.4 InputStreamReader and OutputStreamWriter Section 20.5 A Quick Tour of the Stream Classes Section 20.6 The Data Byte Streams Section 20.7 Working with Files Section 20.8 Object Serialization Section 20.9 The IOException Classes Section 20.10 A Taste of New I/O Chapter 21 Collections Section 21.1 Collections Section 21.2 Iteration Section 21.3 Ordering with Comparable and Comparator Section 21.4 The Collection Interface Section 21.5 Set and SortedSet Section 21.6 List Section 21.7 Queue Section 21.8 Map and SortedMap Section 21.9 enum Collections Section 21.10 Wrapped Collections and the Collections Class Section 21.11 Synchronized Wrappers and Concurrent Collections Section 21.12 The Arrays Utility Class Section 21.13 Writing Iterator Implementations Section 21.14 Writing Collection Implementations Section 21.15 The Legacy Collection Types Section 21.16 Properties Chapter 22 Miscellaneous Utilities Section 22.1 Formatter Section 22.2 BitSet Section 22.3 Observer/Observable Section 22.4 Random Section 22.5 Scanner Section 22.6 StringTokenizer Section 22.7 Timer and TimerTask Section 22.8 UUID Section 22.9 Math and StrictMath Chapter 23 System Programming Section 23.1 The System Class Section 23.2 Creating Processes Section 23.3 Shutdown Section 23.4 The Rest of Runtime Section 23.5 Security Chapter 24 Internationalization and Localization Section 24.1 Locale Section 24.2 Resource Bundles Section 24.3 Currency Section 24.4 Time, Dates, and Calendars Section 24.5 Formatting and Parsing Dates and Times Section 24.6 Internationalization and Localization for Text Chapter 25 Standard Packages Section 25.1 java.awt The Abstract Window Toolkit Section 25.2 java.applet Applets Section 25.3 java.beans Components Section 25.4 java.math Mathematics Section 25.5 java.net The Network Section 25.6 java.rmi Remote Method Invocation Section 25.7 java.security and Related Packages Security Tools Section 25.8 java.sql Relational Database Access Section 25.9 Utility Subpackages Section 25.10 javax.* Standard Extensions Section 25.11 javax.accessibility Accessibility for GUIs Section 25.12 javax.naming Directory and Naming Services Section 25.13 javax.sound Sound Manipulation Section 25.14 javax.swing Swing GUI Components Section 25.15 org.omg.CORBA CORBA APIs Appendix A Application Evolution Section A.1 Language, Library, and Virtual Machine Versions Section A.2 Dealing with Multiple Dialects Section A.3 Generics: Reification, Erasure, and Raw Types Appendix B Useful Tables Further Reading Java Platform Topics Object-Oriented Design Multithreaded Programming Generics Regular Expressions General Programming Techniques Related Languages Software Engineering Visual Design & GUI Design Colophon Note to Translators Article Exercises Quotes Index Copyright © 2006 Sun Microsystems, Inc 4150 Network Circle, Santa Clara, California 95054 U.S.A All rights reserved Use, duplication, or disclosure by the United States Government is subject to the restrictions set forth in DFARS 252.227-7013 (c)(1)(ii) and FAR 52.227-19 The release described in this book may be protected by one or more U.S patents, foreign patents, or pending applications Sun Microsystems, Inc (SUN) hereby grants to you a fully-paid, nonexclusive, nontransferable, perpetual, worldwide limited license (without the right to sublicense) under SUN's intellectual property rights that are essential to practice this specification This license allows and is limited to the creation and distribution of clean room implementations of this specification that: (i) include a complete implementation of the current version of this specification without subsetting or supersetting; (ii) implement all the interfaces and functionality of the standard java.* packages as defined by SUN, without subsetting or supersetting; (iii) do not add any additional packages, classes or methods to the java.* packages; (iv) pass all test suites relating to the most recent published version of this specification that are available from SUN six (6) months prior to any beta release of the clean room implementation or upgrade thereto; (v) do not derive from SUN source code or binary materials; and (vi) do not include any SUN binary materials without an appropriate and separate license from SUN Sun, Sun Microsystems, Sun Microsystems Computer Corporation, the Sun logo, the Sun Microsystems Computer Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] hard_tokens HashMap constructors HelloWorld Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] if_false incrementAll indirectInvoke inheritDocComment initialized_array 2nd initialized_array_code initialized_matrix int_or_long IntegerStack IntegerStack_clone IntegerStack_setup intern InterruptedIOException invokeIsPrivate iplus1 iplusequals1 iplusplus Iterator use 2nd iterator-mention Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] legal_tokens llqueue local-variable-decl Lookup Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] MapInteger maskIsPrivate maxThread method-invocation-conversion MethodBenchmark More multi_array multi_array_long multiNewArray MyClassClone Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] nanoTime new_thread Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] Operations out/Babble out/BabbleFalse out/BetterStringsDemo out/Body out/ClassContents out/Echo out/ExtendShow out/Fibonacci out/fmtPingPong out/HelloWorld out/ImprovedFibonacci out/More out/PassByValue out/PassRef out/QuotedString out/RegionMatch out/SplitUp out/StringsDemo out/TestSort out/TypeDesc out/useSwapWords Outer Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] package PassByValue PassRef Permissions Permissions class PingPong Pixel pixel_clear PlayerLoader point_clear point_move point_s point_s_declare point_static point_this printserver proxyFor publicStaticFinal publicStaticFinalModifiers Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] Queue Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] readAttrs RegionMatch reinterrupt remove replace Reuse Rose diagram RunPingPong Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] setArray setArrayInt setField shorterGetField shorterSetField showFinal ShowJoin ShowObject simpleCatch SimpleLookup SimpleSortDouble singleNewArray SortDouble SortDoubleMain sorted-collection sortedcollection-fixed SortMetrics sqrtInt 2nd sqrtIntFaster squeezeOut 2nd static_primes string-split StringAssign StringEquals StringObjectExample StringsDemo subclass [See Extending class(es)] Sum sumStream sunWithMoon sunWithMoonReplaceAll swapFirstWords swapWords synchronized_abs Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] TestSort threadgroup-in-constructor toUpperLower type search order TypeDesc Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] Unicode Case Issues UnicodeBlockDemo unnamed-package Upper Unicode Text URL coverage use_distance useGetProxyClass UseLookup useSwapWords Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] Verbose volatile Index [A] [B] [C] [D] [E] [F] [G] [H] [I] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] walkThrough WhichChars wrong_tokens ... programming language as provided by the Java 2 Platform Standard Edition 5.0 and specified by the Java Language Specification, Third Edition It also covers most of the classes in the main packages (java. lang, java. util, java. io) as implemented... have one by the fifth edition On the production side, the path to the fourth edition was a somewhat changeable one Mike Hendrickson held the reins when the fourth edition was conceived, then handed the reins... java. lang, java. math, java. net, java. text, java. util Patrick Chan, Rosanna Lee, Doug Kramer The Java Class Libraries, Second Edition, Volume 1: Supplement for the Java 2 Platform, Standard Edition, v1.2

Ngày đăng: 25/03/2019, 16:45

Từ khóa liên quan

Mục lục

  • THE Java™ Programming Language, Fourth Edition

  • Table of Contents

  • Copyright

  • The Java™ Series

  • Preface

    • About This Book

    • Examples and Documentation

    • Acknowledgments (Fourth Edition)

    • Acknowledgments (Third Edition)

    • Acknowledgments (Second Edition)

    • Acknowledgments (First Edition)

    • Chapter 1. A Quick Tour

      • Section 1.1.  Getting Started

      • Section 1.2.  Variables

      • Section 1.3.  Comments in Code

      • Section 1.4.  Named Constants

      • Section 1.5.  Unicode Characters

      • Section 1.6.  Flow of Control

      • Section 1.7.  Classes and Objects

      • Section 1.8.  Methods and Parameters

      • Section 1.9.  Arrays

      • Section 1.10.  String Objects

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan