search for books and compare prices
Tables of Contents for The Object of Java
Chapter/Section Title
Page #
Page Count
Objects and Classes
1
23
Objects Everywhere
2
1
Objects in Software
2
2
Anatomy of a Software Class
4
2
The Difference between Objects and Classes
6
1
Edit, Compile, and Run
7
3
Programming with BlueJ
10
4
Introduction to Software Engineering
14
2
A Sample of Object-Oriented Software Development
16
7
Java Inspector
18
1
Terminology
18
1
Exercises
19
2
Programming Exercises
21
2
Introduction to Java Objects
23
34
Syntax Diagrams
24
2
The Method Call
26
2
Instruction Sequences
28
1
Constructing and Assigning Objects
29
2
Swapping
31
2
Putting it Together in a Java Class
33
4
Programming by Contract
37
6
Comments
43
2
BlueJ Debugging
45
12
Java Inspector
50
1
Terminology
51
1
Exercises
51
3
Programming Exercises
54
3
Introduction to Design and Implementation
57
42
Top-Down Design-Refining Algorithms
58
5
Selecting Identifiers
63
2
A Second Design Example
65
4
A GUI Software Library
69
3
Calling Methods with Parameters
72
7
Import Declarations
79
3
Prototyping
82
3
Debugging with BlueJ and System.Out.Println
85
6
Recap
91
8
Java Inspector
92
1
Terminology
93
1
Exercises
93
4
Programming Exercises
97
2
Methods
99
46
The Need for a Subprogram
100
3
Private Parameterless Methods
103
4
Using Parameters
107
3
Local Variables
110
5
Nonvoid Methods
115
3
Debugging Mehods
118
3
this
121
1
Introduction to Event Handling
122
5
Postcondition Notation
127
3
A Design Example Using AView
130
15
Java Inspector
136
1
Terminology
137
1
Exercises
137
5
Programming Exercises
142
3
Numeric Processing
145
30
Primitive Types
146
1
Primitive Integer Data Types
146
5
Differences between Primitives and References
151
2
Real Numbers (Float and Double Types)
153
3
System.Out.Println Revisited
156
1
Mixed-Type Numeric Expressions
156
3
Primitive Methods (Including Math)
159
3
Constants (Final)
162
1
Numeric Expression Patterns
163
2
Design Example-Dynamic Histogram
165
10
Java Inspector
170
1
Terminology
170
1
Exercises
171
2
Programming Exercises
173
2
Supplier Classes
175
58
Clients and Suppliers in Software
176
2
Another Client
178
5
Suppliers
183
5
Manipulating Suppliers with BlueJ
188
5
Scope and Lifetime
193
4
Class Interface Design Principles
197
8
Separating Read and Write Access
205
2
Method Overloading
207
3
char Data Type
210
3
Strings
213
4
ALabel (Optional)
217
16
Java Inspector
224
1
Terminology
224
1
Exercises
225
4
Programming Exercises
229
4
Logic and Selection
233
46
The if Instruction
234
5
Relational Expressions
239
3
Boolean Expressions
242
5
Conditional Evaluation
247
1
Predicates
248
2
Nesting if Instructions
250
4
Multiway Selection
254
3
The Switch Instruction
257
4
Software Testing
261
2
Logic and Programming (Optional)
263
2
Assertions (Optional)
265
14
Java Inspector
269
1
Terminology
270
1
Exercises
270
4
Programming Exercises
274
5
Inheritance
279
56
Extends
280
6
Class Relations: contains_a and is_a
286
8
Specialization and Extension
294
3
Protected Scope
297
4
Inheriting for Event Handling
301
8
Animating by Inheriting EventTimer (Optional)
309
4
Design Example with Scrollbars and Text Fields (Optional)
313
9
Recap
322
13
Java Inspector
324
1
Terminology
325
1
Exercises
325
6
Programming Exercises
331
4
Inheritance Hierarchies and Polymorphism
335
42
Inheritance Hierarchies
336
4
Type Conformance
340
4
Subtype Polymorphism
344
10
Abstract Classes
354
9
The Object Class
363
2
Equality by Content and by Identity
365
12
Java Inspector
367
1
Terminology
368
1
Exercises
368
4
Programming Exercises
372
5
Repetition
377
40
The while Loop
378
6
Counting Loops
384
3
Sentinel Loops
387
4
Loop Design Cautions
391
1
Nested Loops
392
4
The do Loop
396
3
Loop Invariants
399
5
Looping and Event Handling
404
1
Testing and Loops
405
12
Java Inspector
406
1
Terminology
407
1
Exercises
407
5
Programming Exercises
412
5
Containers
417
38
Containers of Objects
418
2
Generic Containers
420
2
Type Safety, Casting, and instanceof
422
3
Wrapper Classes
425
4
Lists
429
7
List Traversal
436
3
Linear Searching
439
2
Sorting by Insertion
441
14
Java Inspector
446
1
Terminology
446
1
Exercises
447
4
Programming Exercises
451
4
Introduction to Arrays
455
46
One-Dimensional Arrays
456
8
Keeping Indices in Bounds
464
1
Sequential Processing with for Loops
465
5
Treating Arrays in Aggregate
470
5
Tables
475
2
Arrays of Objects
477
2
Arrays and Objects
479
1
Sorting-The Selection Sort
480
4
Two-Dimensional Arrays
484
17
Java Inspector
489
1
Terminology
489
1
Exercises
490
5
Programming Exercises
495
6
File Input and Output
501
42
Files
502
3
The Java File Class
505
4
I/O Exceptions
509
3
Input and Output
512
5
DataInputStream and DataOutputStream
517
7
Text Files
524
5
Terminal-Style I/O (Optional)
529
2
Persistent Objects (Optional)
531
3
JFileChooser (Optional)
534
9
Java Inspector
537
1
Terminology
538
1
Exercises
539
3
Programming Exercises
542
1
Recursion
543
30
Recursive Definition
544
5
From Recursive Definition to Method
549
3
Recursive Methods
552
2
Recursive Execution
554
4
Recursion and Repetition
558
2
More Complicated Forms of Recursion
560
13
Java Inspector
566
1
Terminology
566
1
Exercises
566
2
Programming Exercises
568
5
Library Issues: Packages, Statics, Applets, and Delegation
573
36
Creating Packages
574
4
Using Packages
578
2
static Methods
580
2
static Variables
582
5
Applications and Applets
587
10
Event Delegation (Optional)
597
12
Java Inspector
604
1
Terminology
604
1
Exercises
605
4
APPENDIX A Introduction to Computing Systems
609
18
A.1 What Is a Computer?
610
2
A.2 Analog or Digital?
612
2
A.3 How Is Data Stored?
614
2
A.4 What Are Binary Numbers?
616
6
A.5 How Do Computers Communicate?
622
2
A.6 Why are Computers Called ``Systems''?
624
3
Terminology
626
1
APPENDIX B Java Syntax Diagrams
627
22
APPENDIX C Precedence of Java Operations
649
4
APPENDIX D Swing, awt, and aLibrary
653
26
D.1 Background on awt and Swing
654
1
D.2 Transitioning Common Features
654
4
D.3 JFrame instead of AWindow
658
3
D.4 JLabel instead of ALabel
661
1
D.5 JComponent instead of AView, AOval, ARectangle, and ARoundRectangle
662
5
D.6 JComponent instead of ALine
667
1
D.7 JComponent instead of AImage
667
1
D.8 Handling Mouse and Key Events
668
4
D.9 JButton instead of AButton
672
1
D.10 JScrollbar instead of AScrollbar
673
1
D.11 TextArea instead of ATextArea
674
1
D.12 JTextField instead of ATextField
675
4
APPENDIX E UML Notations
679
10
E.1 Class Diagrams
680
4
E.2 Object Diagrams
684
2
E.3 Activity Diagrams
686
3
APPENDIX F BlueJ Summary
689
14
F.1 Installation and Configuration
690
2
F.2 Working with Projects
692
3
F.3 Working with Classes
695
3
F.4 Testing and Debugging
698
5
Index
703