⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 contents.htm

📁 Thinking in Java, 2nd edition
💻 HTM
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<!--
This document was converted from RTF source: 
By rtftohtml 4.19
See http://www.sunpack.com/RTF
Filename:TIJ2.rtf
Application Directory:C:\TOOLS\RTF2HTML\
Subject:
Author:Bruce Eckel
Operator:Bruce Eckel
Document Comments:
Version Comments:
Comments:
Keywords:
Translation Date:05/21/2001
Translation Time:10:38:58
Translation Platform:Win32
Number of Output files:23
This File:Contents.htm
SplitDepth=1
SkipNavPanel=1
SkipLeadingToc=1
SkipTrailingToc=1
GenContents=1
GenFrames=1
GenIndex=1
-->
<HEAD lang="en"><META http-equiv="Content-Type" content="text/html">
<TITLE>Thinking in Java, 2nd ed. Revision 12 - Contents</TITLE>
</HEAD>

<BODY  BGCOLOR="#FFFFFF"><H1>Thinking in Java, 2nd ed. Revision 12 - Contents </H1></FONT>
<H2><A HREF="FrontMtr.htm">Thinking in Java, 2nd ed. Revision 12 - Title Page </A></H2></FONT>
<UL>
<A HREF="Preface.htm">Preface</A><BR>
<UL>
<A HREF="Preface.htm#Heading2">Preface to the 2nd edition</A><BR>
<UL>
<A HREF="Preface.htm#Heading3">Java 2</A><BR>
</UL>
<A HREF="Preface.htm#Heading4">The CD ROM</A><BR>
</UL>
<A HREF="Intro.htm">Introduction</A><BR>
<UL>
<A HREF="Intro.htm#Heading6">Prerequisites</A><BR>
<A HREF="Intro.htm#Heading7">Learning Java</A><BR>
<A HREF="Intro.htm#Heading8">Goals</A><BR>
<A HREF="Intro.htm#Heading9">Online documentation</A><BR>
<A HREF="Intro.htm#Heading10">Chapters</A><BR>
<A HREF="Intro.htm#Heading11">Exercises</A><BR>
<A HREF="Intro.htm#Heading12">Multimedia CD ROM</A><BR>
<A HREF="Intro.htm#Heading13">Source code</A><BR>
<UL>
<A HREF="Intro.htm#Heading14">Coding standards</A><BR>
</UL>
<A HREF="Intro.htm#Heading15">Java versions</A><BR>
<A HREF="Intro.htm#Heading16">Seminars and mentoring</A><BR>
<A HREF="Intro.htm#Heading17">Errors</A><BR>
<A HREF="Intro.htm#Heading18">Note on the cover design</A><BR>
<A HREF="Intro.htm#Heading19">Acknowledgements</A><BR>
<UL>
<A HREF="Intro.htm#Heading20">Internet contributors</A><BR>
</UL>
</UL>
<A HREF="Chap01.htm">1: Introduction  to Objects</A><BR>
<UL>
<A HREF="Chap01.htm#Heading22">The progress of abstraction</A><BR>
<A HREF="Chap01.htm#Heading23">An object has an interface</A><BR>
<A HREF="Chap01.htm#Heading24">The hidden implementation</A><BR>
<A HREF="Chap01.htm#Heading25">Reusing the implementation</A><BR>
<A HREF="Chap01.htm#Heading26">Inheritance: reusing the interface</A><BR>
<UL>
<A HREF="Chap01.htm#Heading27">Is-a vs. is-like-a relationships</A><BR>
</UL>
<A HREF="Chap01.htm#Heading28">Interchangeable objects  with polymorphism</A><BR>
<UL>
<A HREF="Chap01.htm#Heading29">Abstract base classes and interfaces</A><BR>
</UL>
<A HREF="Chap01.htm#Heading30">Object landscapes and lifetimes</A><BR>
<UL>
<A HREF="Chap01.htm#Heading31">Collections and iterators</A><BR>
<A HREF="Chap01.htm#Heading32">The singly rooted hierarchy</A><BR>
<A HREF="Chap01.htm#Heading33">Collection libraries and support for easy collection use</A><BR>
<UL>
<A HREF="Chap01.htm#Heading34">Downcasting vs. templates/generics</A><BR>
</UL>
<A HREF="Chap01.htm#Heading35">The housekeeping dilemma: who should clean up?</A><BR>
<UL>
<A HREF="Chap01.htm#Heading36">Garbage collectors vs. efficiency and flexibility</A><BR>
</UL>
</UL>
<A HREF="Chap01.htm#Heading37">Exception handling: dealing with errors</A><BR>
<A HREF="Chap01.htm#Heading38">Multithreading</A><BR>
<A HREF="Chap01.htm#Heading39">Persistence</A><BR>
<A HREF="Chap01.htm#Heading40">Java and the Internet</A><BR>
<UL>
<A HREF="Chap01.htm#Heading41">What is the Web?</A><BR>
<UL>
<A HREF="Chap01.htm#Heading42">Client/Server computing</A><BR>
<A HREF="Chap01.htm#Heading43">The Web as a giant server</A><BR>
</UL>
<A HREF="Chap01.htm#Heading44">Client-side programming</A><BR>
<UL>
<A HREF="Chap01.htm#Heading45">Plug-ins</A><BR>
<A HREF="Chap01.htm#Heading46">Scripting languages</A><BR>
<A HREF="Chap01.htm#Heading47">Java</A><BR>
<A HREF="Chap01.htm#Heading48">ActiveX</A><BR>
<A HREF="Chap01.htm#Heading49">Security</A><BR>
<A HREF="Chap01.htm#Heading50">Internet vs. intranet</A><BR>
</UL>
<A HREF="Chap01.htm#Heading51">Server-side programming</A><BR>
<A HREF="Chap01.htm#Heading52">A separate arena: applications</A><BR>
</UL>
<A HREF="Chap01.htm#Heading53">Analysis and design</A><BR>
<UL>
<A HREF="Chap01.htm#Heading54">Phase 0: Make a plan</A><BR>
<UL>
<A HREF="Chap01.htm#Heading55">The mission statement</A><BR>
</UL>
<A HREF="Chap01.htm#Heading56">Phase 1: What are we making?</A><BR>
<A HREF="Chap01.htm#Heading57">Phase 2: How will we build it?</A><BR>
<UL>
<A HREF="Chap01.htm#Heading58">Five stages of object design</A><BR>
<A HREF="Chap01.htm#Heading59">Guidelines for object development</A><BR>
</UL>
<A HREF="Chap01.htm#Heading60">Phase 3: Build the core</A><BR>
<A HREF="Chap01.htm#Heading61">Phase 4: Iterate the use cases</A><BR>
<A HREF="Chap01.htm#Heading62">Phase 5: Evolution</A><BR>
<A HREF="Chap01.htm#Heading63">Plans pay off</A><BR>
</UL>
<A HREF="Chap01.htm#Heading64">Extreme programming</A><BR>
<UL>
<A HREF="Chap01.htm#Heading65">Write tests first</A><BR>
<A HREF="Chap01.htm#Heading66">Pair programming</A><BR>
</UL>
<A HREF="Chap01.htm#Heading67">Why Java succeeds</A><BR>
<UL>
<A HREF="Chap01.htm#Heading68">Systems are easier  to express and understand</A><BR>
<A HREF="Chap01.htm#Heading69">Maximal leverage with libraries</A><BR>
<A HREF="Chap01.htm#Heading70">Error handling</A><BR>
<A HREF="Chap01.htm#Heading71">Programming in the large</A><BR>
</UL>
<A HREF="Chap01.htm#Heading72">Strategies for transition</A><BR>
<UL>
<A HREF="Chap01.htm#Heading73">Guidelines</A><BR>
<UL>
<A HREF="Chap01.htm#Heading74">1. Training</A><BR>
<A HREF="Chap01.htm#Heading75">2. Low-risk project</A><BR>
<A HREF="Chap01.htm#Heading76">3. Model from success</A><BR>
<A HREF="Chap01.htm#Heading77">4. Use existing class libraries</A><BR>
<A HREF="Chap01.htm#Heading78">5. Don&#8217;t rewrite existing code in Java</A><BR>
</UL>
<A HREF="Chap01.htm#Heading79">Management obstacles</A><BR>
<UL>
<A HREF="Chap01.htm#Heading80">Startup costs</A><BR>
<A HREF="Chap01.htm#Heading81">Performance issues</A><BR>
<A HREF="Chap01.htm#Heading82">Common design errors</A><BR>
</UL>
</UL>
<A HREF="Chap01.htm#Heading83">Java vs. C++?</A><BR>
<A HREF="Chap01.htm#Heading84">Summary</A><BR>
</UL>
<A HREF="Chap02.htm">2: Everything is an Object</A><BR>
<UL>
<A HREF="Chap02.htm#Heading86">You manipulate objects  with references </A><BR>
<A HREF="Chap02.htm#Heading87">You must create  all the objects</A><BR>
<UL>
<A HREF="Chap02.htm#Heading88">Where storage lives</A><BR>
<A HREF="Chap02.htm#Heading89">Special case: primitive types</A><BR>
<UL>
<A HREF="Chap02.htm#Heading90">High-precision numbers</A><BR>
</UL>
<A HREF="Chap02.htm#Heading91">Arrays in Java</A><BR>
</UL>
<A HREF="Chap02.htm#Heading92">You never need to  destroy an object</A><BR>
<UL>
<A HREF="Chap02.htm#Heading93">Scoping</A><BR>
<A HREF="Chap02.htm#Heading94">Scope of objects</A><BR>
</UL>
<A HREF="Chap02.htm#Heading95">Creating new  data types: class</A><BR>
<UL>
<A HREF="Chap02.htm#Heading96">Fields and methods</A><BR>
<UL>
<A HREF="Chap02.htm#Heading97">Default values for primitive members</A><BR>
</UL>
</UL>
<A HREF="Chap02.htm#Heading98">Methods, arguments,  and return values</A><BR>
<UL>
<A HREF="Chap02.htm#Heading99">The argument list</A><BR>
</UL>
<A HREF="Chap02.htm#Heading100">Building a Java program</A><BR>
<UL>
<A HREF="Chap02.htm#Heading101">Name visibility</A><BR>
<A HREF="Chap02.htm#Heading102">Using other components</A><BR>
<A HREF="Chap02.htm#Heading103">The static keyword</A><BR>
</UL>
<A HREF="Chap02.htm#Heading104">Your first Java program</A><BR>
<UL>
<A HREF="Chap02.htm#Heading105">Compiling and running</A><BR>
</UL>
<A HREF="Chap02.htm#Heading106">Comments and embedded documentation</A><BR>
<UL>
<A HREF="Chap02.htm#Heading107">Comment documentation</A><BR>
<A HREF="Chap02.htm#Heading108">Syntax</A><BR>
<A HREF="Chap02.htm#Heading109">Embedded HTML</A><BR>
<A HREF="Chap02.htm#Heading110">@see: referring to other classes</A><BR>
<A HREF="Chap02.htm#Heading111">Class documentation tags</A><BR>
<UL>
<A HREF="Chap02.htm#Heading112">@version</A><BR>
<A HREF="Chap02.htm#Heading113">@author</A><BR>
<A HREF="Chap02.htm#Heading114">@since</A><BR>
</UL>
<A HREF="Chap02.htm#Heading115">Variable documentation tags</A><BR>
<A HREF="Chap02.htm#Heading116">Method documentation tags</A><BR>
<UL>
<A HREF="Chap02.htm#Heading117">@param</A><BR>
<A HREF="Chap02.htm#Heading118">@return</A><BR>
<A HREF="Chap02.htm#Heading119">@throws</A><BR>
<A HREF="Chap02.htm#Heading120">@deprecated</A><BR>
</UL>
<A HREF="Chap02.htm#Heading121">Documentation example</A><BR>
</UL>
<A HREF="Chap02.htm#Heading122">Coding style</A><BR>
<A HREF="Chap02.htm#Heading123">Summary</A><BR>
<A HREF="Chap02.htm#Heading124">Exercises</A><BR>
</UL>
<A HREF="Chap03.htm">3: Controlling Program Flow</A><BR>
<UL>
<A HREF="Chap03.htm#Heading126">Using Java operators</A><BR>
<UL>
<A HREF="Chap03.htm#Heading127">Precedence</A><BR>
<A HREF="Chap03.htm#Heading128">Assignment</A><BR>
<UL>
<A HREF="Chap03.htm#Heading129">Aliasing during method calls</A><BR>
</UL>
<A HREF="Chap03.htm#Heading130">Mathematical operators</A><BR>
<UL>
<A HREF="Chap03.htm#Heading131">Unary minus and plus operators</A><BR>
</UL>
<A HREF="Chap03.htm#Heading132">Auto increment and decrement</A><BR>
<A HREF="Chap03.htm#Heading133">Relational operators</A><BR>
<UL>
<A HREF="Chap03.htm#Heading134">Testing object equivalence</A><BR>
</UL>
<A HREF="Chap03.htm#Heading135">Logical operators</A><BR>
<UL>
<A HREF="Chap03.htm#Heading136">Short-circuiting</A><BR>
</UL>
<A HREF="Chap03.htm#Heading137">Bitwise operators</A><BR>
<A HREF="Chap03.htm#Heading138">Shift operators</A><BR>
<A HREF="Chap03.htm#Heading139">Ternary if-else operator</A><BR>
<A HREF="Chap03.htm#Heading140">The comma operator</A><BR>
<A HREF="Chap03.htm#Heading141">String operator +</A><BR>
<A HREF="Chap03.htm#Heading142">Common pitfalls when using operators</A><BR>
<A HREF="Chap03.htm#Heading143">Casting operators</A><BR>
<UL>
<A HREF="Chap03.htm#Heading144">Literals</A><BR>
<A HREF="Chap03.htm#Heading145">Promotion</A><BR>
</UL>
<A HREF="Chap03.htm#Heading146">Java has no &#8220;sizeof&#8221; </A><BR>
<A HREF="Chap03.htm#Heading147">Precedence revisited</A><BR>
<A HREF="Chap03.htm#Heading148">A compendium of operators</A><BR>
</UL>
<A HREF="Chap03.htm#Heading149">Execution control</A><BR>
<UL>
<A HREF="Chap03.htm#Heading150">true and false</A><BR>
<A HREF="Chap03.htm#Heading151">if-else</A><BR>
<UL>
<A HREF="Chap03.htm#Heading152">return</A><BR>
</UL>
<A HREF="Chap03.htm#Heading153">Iteration </A><BR>
<A HREF="Chap03.htm#Heading154">do-while</A><BR>
<A HREF="Chap03.htm#Heading155">for</A><BR>
<UL>
<A HREF="Chap03.htm#Heading156">The comma operator</A><BR>
</UL>
<A HREF="Chap03.htm#Heading157">break and continue</A><BR>
<UL>
<A HREF="Chap03.htm#Heading158">The infamous &#8220;goto&#8221;</A><BR>
</UL>
<A HREF="Chap03.htm#Heading159">switch</A><BR>
<UL>
<A HREF="Chap03.htm#Heading160">Calculation details</A><BR>
</UL>
</UL>
<A HREF="Chap03.htm#Heading161">Summary</A><BR>
<A HREF="Chap03.htm#Heading162">Exercises</A><BR>
</UL>
<A HREF="Chap04.htm">4: Initialization  &amp; Cleanup</A><BR>
<UL>
<A HREF="Chap04.htm#Heading164">Guaranteed initialization  with the constructor</A><BR>
<A HREF="Chap04.htm#Heading165">Method overloading</A><BR>
<UL>
<A HREF="Chap04.htm#Heading166">Distinguishing overloaded methods</A><BR>
<A HREF="Chap04.htm#Heading167">Overloading with primitives</A><BR>
<A HREF="Chap04.htm#Heading168">Overloading on return values</A><BR>
<A HREF="Chap04.htm#Heading169">Default constructors</A><BR>
<A HREF="Chap04.htm#Heading170">The this keyword</A><BR>
<UL>
<A HREF="Chap04.htm#Heading171">Calling constructors from constructors</A><BR>
<A HREF="Chap04.htm#Heading172">The meaning of static</A><BR>
</UL>
</UL>
<A HREF="Chap04.htm#Heading173">Cleanup: finalization and  garbage collection</A><BR>
<UL>
<A HREF="Chap04.htm#Heading174">What is finalize(&#160;) for?</A><BR>
<A HREF="Chap04.htm#Heading175">You must perform cleanup</A><BR>
<A HREF="Chap04.htm#Heading176">The death condition</A><BR>
<A HREF="Chap04.htm#Heading177">How a garbage collector works</A><BR>
</UL>
<A HREF="Chap04.htm#Heading178">Member initialization</A><BR>
<UL>
<A HREF="Chap04.htm#Heading179">Specifying initialization</A><BR>
<A HREF="Chap04.htm#Heading180">Constructor initialization</A><BR>
<UL>
<A HREF="Chap04.htm#Heading181">Order of initialization</A><BR>
<A HREF="Chap04.htm#Heading182">Static data initialization</A><BR>
<A HREF="Chap04.htm#Heading183">Explicit static initialization</A><BR>
<A HREF="Chap04.htm#Heading184">Non-static instance initialization</A><BR>
</UL>
</UL>
<A HREF="Chap04.htm#Heading185">Array initialization</A><BR>
<UL>
<A HREF="Chap04.htm#Heading186">Multidimensional arrays</A><BR>
</UL>
<A HREF="Chap04.htm#Heading187">Summary</A><BR>
<A HREF="Chap04.htm#Heading188">Exercises</A><BR>
</UL>
<A HREF="Chap05.htm">5: Hiding the Implementation</A><BR>
<UL>
<A HREF="Chap05.htm#Heading190">package: the library unit</A><BR>
<UL>
<A HREF="Chap05.htm#Heading191">Creating unique package names</A><BR>
<UL>
<A HREF="Chap05.htm#Heading192">Collisions</A><BR>
</UL>
<A HREF="Chap05.htm#Heading193">A custom tool library</A><BR>
<A HREF="Chap05.htm#Heading194">Using imports to change behavior</A><BR>
<A HREF="Chap05.htm#Heading195">Package caveat</A><BR>
</UL>
<A HREF="Chap05.htm#Heading196">Java access specifiers</A><BR>
<UL>
<A HREF="Chap05.htm#Heading197">&#8220;Friendly&#8221;</A><BR>
<A HREF="Chap05.htm#Heading198">public: interface access</A><BR>
<UL>
<A HREF="Chap05.htm#Heading199">The default package</A><BR>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -