找传奇、传世资源到传世资源站!

Java核心技术卷(Core.Java.Volume.I.Fundamentals....

  • 资源分类:Java/学习书籍
  • 发 布 人:房东的猫
  • 文件大小:47689236
  • 文件格式:.pdf
  • 浏览次数:25
  • 下载次数: 0
  • 发布时间:9月5日

  • 标签: 技术
8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

Prentice.Hall.Core.Java.Volume.I.Fundamentals.11th.Edition.pdf
from clipboard
ContentsPrefaceAcknowledgmentsChapter 1: An Introduction to Java1.1 Java as a Programming Platform1.2 The Java “White Paper” Buzzwords1.2.1 Simple1.2.2 Object-Oriented1.2.3 Distributed1.2.4 Robust1.2.5 Secure1.2.6 Architecture-Neutral1.2.7 Portable1.2.8 Interpreted1.2.9 High-Performance1.2.10 Multithreaded1.2.11 Dynamic1.3 Java Applets and the Internet1.4 A Short History of Java1.5 Common Misconceptions about JavaChapter 2: The Java Programming Environment2.1 Installing the Java Development Kit2.1.1 Downloading the JDK2.1.2 Setting up the JDK2.1.3 Installing Source Files and Documentation2.2 Using the Command-Line Tools2.3 Using an Integrated Development Environment2.4 JShellChapter 3: Fundamental Programming Structures in Java3.1 A Simple Java Program3.2 Comments3.3 Data Types3.3.1 Integer Types3.3.2 Floating-Point Types3.3.3 The char Type3.3.4 Unicode and the char Type3.3.5 The boolean Type3.4 Variables and Constants3.4.1 Declaring Variables3.4.2 Initializing Variables3.4.3 Constants3.4.4 Enumerated Types3.5 Operators3.5.1 Arithmetic Operators3.5.2 Mathematical Functions and Constants3.5.3 Conversions between Numeric Types3.5.4 Casts3.5.5 Combining Assignment with Operators3.5.6 Increment and Decrement Operators3.5.7 Relational and boolean Operators3.5.8 Bitwise Operators3.5.9 Parentheses and Operator Hierarchy3.6 Strings3.6.1 Substrings3.6.2 Concatenation3.6.3 Strings Are Immutable3.6.4 Testing Strings for Equality3.6.5 Empty and Null Strings3.6.6 Code Points and Code Units3.6.7 The String API3.6.8 Reading the Online API Documentation3.6.9 Building Strings3.7 Input and Output3.7.1 Reading Input3.7.2 Formatting Output3.7.3 File Input and Output3.8 Control Flow3.8.1 Block Scope3.8.2 Conditional Statements3.8.3 Loops3.8.4 Determinate Loops3.8.5 Multiple Selections—The switch Statement3.8.6 Statements That Break Control Flow3.9 Big Numbers3.10 Arrays3.10.1 Declaring Arrays3.10.2 Accessing Array Elements3.10.3 The “for each” Loop3.10.4 Array Copying3.10.5 Command-Line Parameters3.10.6 Array Sorting3.10.7 Multidimensional Arrays3.10.8 Ragged ArraysChapter 4: Objects and Classes4.1 Introduction to Object-Oriented Programming4.1.1 Classes4.1.2 Objects4.1.3 Identifying Classes4.1.4 Relationships between Classes4.2 Using Predefined Classes4.2.1 Objects and Object Variables4.2.2 The LocalDate Class of the Java Library4.2.3 Mutator and Accessor Methods4.3 Defining Your Own Classes4.3.1 An Employee Class4.3.2 Use of Multiple Source Files4.3.3 Dissecting the Employee Class4.3.4 First Steps with Constructors4.3.5 Declaring Local Variables with var4.3.6 Working with null References4.3.7 Implicit and Explicit Parameters4.3.8 Benefits of Encapsulation4.3.9 Class-Based Access Privileges4.3.10 Private Methods4.3.11 Final Instance Fields4.4 Static Fields and Methods4.4.1 Static Fields4.4.2 Static Constants4.4.3 Static Methods4.4.4 Factory Methods4.4.5 The main Method4.5 Method Parameters4.6 Object Construction4.6.1 Overloading4.6.2 Default Field Initialization4.6.3 The Constructor with No Arguments4.6.4 Explicit Field Initialization4.6.5 Parameter Names4.6.6 Calling Another Constructor4.6.7 Initialization Blocks4.6.8 Object Destruction and the finalize Method4.7 Packages4.7.1 Package Names4.7.2 Class Importation4.7.3 Static Imports4.7.4 Addition of a Class into a Package4.7.5 Package Access4.7.6 The Class Path4.7.7 Setting the Class Path4.8 JAR Files4.8.1 Creating JAR files4.8.2 The Manifest4.8.3 Executable JAR Files4.8.4 Multi-Release JAR Files4.8.5 A Note about Command-Line Options4.9 Documentation Comments4.9.1 Comment Insertion4.9.2 Class Comments4.9.3 Method Comments4.9.4 Field Comments4.9.5 General Comments4.9.6 Package Comments4.9.7 Comment Extraction4.10 Class Design HintsChapter 5: Inheritance5.1 Classes, Superclasses, and Subclasses5.1.1 Defining Subclasses5.1.2 Overriding Methods5.1.3 Subclass Constructors5.1.4 Inheritance Hierarchies5.1.5 Polymorphism5.1.6 Understanding Method Calls5.1.7 Preventing Inheritance: Final Classes and Methods5.1.8 Casting5.1.9 Abstract Classes5.1.10 Protected Access5.2 Object: The Cosmic Superclass5.2.1 Variables of Type Object5.2.2 The equals Method5.2.3 Equality Testing and Inheritance5.2.4 The hashCode Method5.2.5 The toString Method5.3 Generic Array Lists5.3.1 Declaring Array Lists5.3.2 Accessing Array List Elements5.3.3 Compatibility between Typed and Raw Array Lists5.4 Object Wrappers and Autoboxing5.5 Methods with a Variable Number of Parameters5.6 Enumeration Classes5.7 Reflection5.7.1 The Class Class5.7.2 A Primer on Declaring Exceptions5.7.3 Resources5.7.4 Using Reflection to Analyze the Capabilities of Classes5.7.5 Using Reflection to Analyze Objects at Runtime5.7.6 Using Reflection to Write Generic Array Code5.7.7 Invoking Arbitrary Methods and Constructors5.8 Design Hints for InheritanceChapter 6: Interfaces, Lambda Expressions, and Inner Classes6.1 Interfaces6.1.1 The Interface Concept6.1.2 Properties of Interfaces6.1.3 Interfaces and Abstract Classes6.1.4 Static and Private Methods6.1.5 Default Methods6.1.6 Resolving Default Method Conflicts6.1.7 Interfaces and Callbacks6.1.8 The Comparator Interface6.1.9 Object Cloning6.2 Lambda Expressions6.2.1 Why Lambdas?6.2.2 The Syntax of Lambda Expressions6.2.3 Functional Interfaces6.2.4 Method References6.2.5 Constructor References6.2.6 Variable Scope6.2.7 Processing Lambda Expressions6.2.8 More about Comparators6.3 Inner Classes6.3.1 Use of an Inner Class to Access Object State6.3.2 Special Syntax Rules for Inner Classes6.3.3 Are Inner Classes Useful? Actually Necessary? Secure?6.3.4 Local Inner Classes6.3.5 Accessing Variables from Outer Methods6.3.6 Anonymous Inner Classes6.3.7 Static Inner Classes6.4 Service Loaders6.5 Proxies6.5.1 When to Use Proxies6.5.2 Creating Proxy Objects6.5.3 Properties of Proxy ClassesChapter 7: Exceptions, Assertions, and Logging7.1 Dealing with Errors7.1.1 The Classification of Exceptions7.1.2 Declaring Checked Exceptions7.1.3 How to Throw an Exception7.1.4 Creating Exception Classes7.2 Catching Exceptions7.2.1 Catching an Exception7.2.2 Catching Multiple Exceptions7.2.3 Rethrowing and Chaining Exceptions7.2.4 The finally Clause7.2.5 The try-with-Resources Statement7.2.6 Analyzing Stack Trace Elements7.3 Tips for Using Exceptions7.4 Using Assertions7.4.1 The Assertion Concept7.4.2 Assertion Enabling and Disabling7.4.3 Using Assertions for Parameter Checking7.4.4 Using Assertions for Documenting Assumptions7.5 Logging7.5.1 Basic Logging7.5.2 Advanced Logging7.5.3 Changing the Log Manager Configuration7.5.4 Localization7.5.5 Handlers7.5.6 Filters7.5.7 Formatters7.5.8 A Logging Recipe7.6 Debugging TipsChapter 8: Generic Programming8.1 Why Generic Programming?8.1.1 The Advantage of Type Parameters8.1.2 Who Wants to Be a Generic Programmer?8.2 Defining a Simple Generic Class8.3 Generic Methods8.4 Bounds for Type Variables8.5 Generic Code and the Virtual Machine8.5.1 Type Erasure8.5.2 Translating Generic Expressions8.5.3 Translating Generic Methods8.5.4 Calling Legacy Code8.6 Restrictions and Limitations8.6.1 Type Parameters Cannot Be Instantiated with PrimitiveTypes8.6.2 Runtime Type Inquiry Only Works with Raw Types8.6.3 You Cannot Create Arrays of Parameterized Types8.6.4 Varargs Warnings8.6.5 You Cannot Instantiate Type Variables8.6.6 You Cannot Construct a Generic Array8.6.7 Type Variables Are Not Valid in Static Contexts of GenericClasses8.6.8 You Cannot Throw or Catch Instances of a Generic Class8.6.9 You Can Defeat Checked Exception Checking8.6.10 Beware of Clashes after Erasure8.7 Inheritance Rules for Generic Types8.8 Wildcard Types8.8.1 The Wildcard Concept8.8.2 Supertype Bounds for Wildcards8.8.3 Unbounded Wildcards8.8.4 Wildcard Capture8.9 Reflection and Generics8.9.1 The Generic Class Class8.9.2 Using Class<T> Parameters for Type Matching8.9.3 Generic Type Information in the Virtual Machine8.9.4 Type LiteralsChapter 9: Collections9.1 The Java Collections Framework9.1.1 Separating Collection Interfaces and Implementation9.1.2 The Collection Interface9.1.3 Iterators9.1.4 Generic Utility Methods9.2 Interfaces in the Collections Framework9.3 Concrete Collections9.3.1 Linked Lists9.3.2 Array Lists9.3.3 Hash Sets9.3.4 Tree Sets9.3.5 Queues and Deques9.3.6 Priority Queues9.4 Maps9.4.1 Basic Map Operations9.4.2 Updating Map Entries9.4.3 Map Views9.4.4 Weak Hash Maps9.4.5 Linked Hash Sets and Maps9.4.6 Enumeration Sets and Maps9.4.7 Identity Hash Maps9.5 Views and Wrappers9.5.1 Small Collections9.5.2 Subranges9.5.3 Unmodifiable Views9.5.4 Synchronized Views9.5.5 Checked Views9.5.6 A Note on Optional Operations9.6 Algorithms9.6.1 Why Generic Algorithms?9.6.2 Sorting and Shuffling9.6.3 Binary Search9.6.4 Simple Algorithms9.6.5 Bulk Operations9.6.6 Converting between Collections and Arrays9.6.7 Writing Your Own Algorithms9.7 Legacy Collections9.7.1 The Hashtable Class9.7.2 Enumerations9.7.3 Property Maps9.7.4 Stacks9.7.5 Bit SetsChapter 10: Graphical User Interface Programming10.1 A History of Java User Interface Toolkits10.2 Displaying Frames10.2.1 Creating a Frame10.2.2 Frame Properties10.3 Displaying Information in a Component10.3.1 Working with 2D Shapes10.3.2 Using Color10.3.3 Using Fonts10.3.4 Displaying Images10.4 Event Handling10.4.1 Basic Event Handling Concepts10.4.2 Example: Handling a Button Click10.4.3 Specifying Listeners Concisely10.4.4 Adapter Classes10.4.5 Actions10.4.6 Mouse Events10.4.7 The AWT Event Hierarchy10.5 The Preferences APIChapter 11: User Interface Components with Swing11.1 Swing and the Model-View-Controller Design Pattern11.2 Introduction to Layout Management11.2.1 Layout Managers11.2.2 Border Layout11.2.3 Grid Layout11.3 Text Input11.3.1 Text Fields11.3.2 Labels and Labeling Components11.3.3 Password Fields11.3.4 Text Areas11.3.5 Scroll Panes11.4 Choice Components11.4.1 Checkboxes11.4.2 Radio Buttons11.4.3 Borders11.4.4 Combo Boxes11.4.5 Sliders11.5 Menus11.5.1 Menu Building11.5.2 Icons in Menu Items11.5.3 Checkbox and Radio Button Menu Items11.5.4 Pop-Up Menus11.5.5 Keyboard Mnemonics and Accelerators11.5.6 Enabling and Disabling Menu Items11.5.7 Toolbars11.5.8 Tooltips11.6 Sophisticated Layout Management11.6.1 The Grid Bag Layout11.6.1.1 The gridx, gridy, gridwidth, andgridheight Parameters11.6.1.2 Weight Fields11.6.1.3 The fill and anchor Parameters11.6.1.4 Padding11.6.1.5 Alternative Method to Specify the gridx, gridy,gridwidth, and gridheight Parameters11.6.1.6 A Grid Bag Layout Recipe11.6.1.7 A Helper Class to Tame the Grid Bag Constraints11.6.2 Custom Layout Managers11.7 Dialog Boxes11.7.1 Option Dialogs11.7.2 Creating Dialogs11.7.3 Data Exchange11.7.4 File DialogsChapter 12: Concurrency12.1 What Are Threads?12.2 Thread States12.2.1 New Threads12.2.2 Runnable Threads12.2.3 Blocked and Waiting Threads12.2.4 Terminated Threads12.3 Thread Properties12.3.1 Interrupting Threads12.3.2 Daemon Threads12.3.3 Thread Names12.3.4 Handlers for Uncaught Exceptions12.3.5 Thread Priorities12.4 Synchronization12.4.1 An Example of a Race Condition12.4.2 The Race Condition Explained12.4.3 Lock Objects12.4.4 Condition Objects12.4.5 The synchronized Keyword12.4.6 Synchronized Blocks12.4.7 The Monitor Concept12.4.8 Volatile Fields12.4.9 Final Variables12.4.10 Atomics12.4.11 Deadlocks12.4.12 Thread-Local Variables12.4.13 Why the stop and suspend Methods Are Deprecated12.5 Thread-Safe Collections12.5.1 Blocking Queues12.5.2 Efficient Maps, Sets, and Queues12.5.3 Atomic Update of Map Entries12.5.4 Bulk Operations on Concurrent Hash Maps12.5.5 Concurrent Set Views12.5.6 Copy on Write Arrays12.5.7 Parallel Array Algorithms12.5.8 Older Thread-Safe Collections12.6 Tasks and Thread Pools12.6.1 Callables and Futures12.6.2 Executors12.6.3 Controlling Groups of Tasks12.6.4 The Fork-Join Framework12.7 Asynchronous Computations12.7.1 Completable Futures12.7.2 Composing Completable Futures12.7.3 Long-Running Tasks in User Interface Callbacks12.8 Processes12.8.1 Building a Process12.8.2 Running a Process12.8.3 Process HandlesAppendixIndex

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复