Java Software Solutions
Subtitle: Foundations of Program Design (6th Edition)
Edition: 6 edition
Publisher: Addison Wesley
Published: March 9, 2008
Language: eng
Format: Hardcover
Number of pages: 784
ISBN-13: 9780321532053
Subjects: Computing and Information Technology; Computers; Computers - Languages / Programming; Computer Books: Languages; Programming Languages - Java; Computers / Programming Languages / Java
Table of contents: title: Preface
pagenum: 7; label: Chapter 1
title: Introduction
pagenum: 29; label: 1.1
title: Computer Processing
pagenum: 30; title: Software Categories
pagenum: 31; title: Digital Computers
pagenum: 32; title: Binary Numbers
pagenum: 35; label: 1.2
title: Hardware Components
pagenum: 39; title: Computer Architecture
pagenum: 39; title: Input/Output Devices
pagenum: 41; title: Main Memory and Secondary Memory
pagenum: 41; title: The Central Processing Unit
pagenum: 45; label: 1.3
title: Networks
pagenum: 48; title: Network Connections
pagenum: 48; title: Local-Area Networks and Wide-Area Networks
pagenum: 50; title: The Internet
pagenum: 51; title: The World Wide Web
pagenum: 53; title: Uniform Resource Locators
pagenum: 54; label: 1.4
title: The Java Programming Language
pagenum: 55; title: A Java Program
pagenum: 56; title: Comments
pagenum: 58; title: Identifiers and Reserved Words
pagenum: 59; title: White Space
pagenum: 62; label: 1.5
title: Program Development
pagenum: 64; title: Programming Language Levels
pagenum: 65; title: Editors, Compilers, and Interpreters
pagenum: 67; title: Development Environments
pagenum: 69; title: Syntax and Semantics
pagenum: 70; title: Errors
pagenum: 71; label: 1.6
title: Object-Oriented Programming
pagenum: 73; title: Problem Solving
pagenum: 74; title: Object-Oriented Software Principles
pagenum: 75; label: Chapter 2
title: Data and Expressions
pagenum: 85; label: 2.1
title: Character Strings
pagenum: 86; title: The print and println Methods
pagenum: 86; title: String Concatenation
pagenum: 88; title: Escape Sequences
pagenum: 91; label: 2.2
title: Variables and Assignment
pagenum: 93; title: Variables
pagenum: 93; title: The Assignment Statement
pagenum: 95; title: Constants
pagenum: 97; label: 2.3
title: Primitive Data Types
pagenum: 99; title: Integers and Floating Points
pagenum: 99; title: Characters
pagenum: 101; title: Booleans
pagenum: 102; label: 2.4
title: Expressions
pagenum: 103; title: Arithmetic Operators
pagenum: 103; title: Operator Precedence
pagenum: 104; title: Increment and Decrement Operators
pagenum: 108; title: Assignment Operators
pagenum: 109; label: 2.5
title: Data Conversion
pagenum: 111; title: Conversion Techniques
pagenum: 113; label: 2.6
title: Interactive Programs
pagenum: 115; title: The Scanner Class
pagenum: 115; label: 2.7
title: Graphics
pagenum: 119; title: Coordinate Systems
pagenum: 120; title: Representing Color
pagenum: 122; label: 2.8
title: Applets
pagenum: 123; title: Executing Applets Using the Web
pagenum: 125; label: 2.9
title: Drawing Shapes
pagenum: 126; title: The Graphics Class
pagenum: 127; title: Software Failure: NASA Mars Climate Orbiter and Polar Lander
pagenum: 139; label: Chapter 3
title: Using Classes and Objects
pagenum: 141; label: 3.1
title: Creating Objects
pagenum: 142; title: Aliases
pagenum: 144; label: 3.2
title: The String Class
pagenum: 146; label: 3.3
title: Packages
pagenum: 150; title: The import Declaration
pagenum: 151; label: 3.4
title: The Random Class
pagenum: 153; label: 3.5
title: The Math Class
pagenum: 156; label: 3.6
title: Formatting Output
pagenum: 159; title: The NumberFormat Class
pagenum: 159; title: The DecimalFormat Class
pagenum: 161; title: The printf Method
pagenum: 162; label: 3.7
title: Enumerated Types
pagenum: 165; label: 3.8
title: Wrapper Classes
pagenum: 168; title: Autoboxing
pagenum: 170; label: 3.9
title: Components and Containers
pagenum: 171; title: Frames and Panels
pagenum: 171; label: 3.10
title: Nested Panels
pagenum: 175; label: 3.11
title: Images
pagenum: 178; label: Chapter 4
title: Writing Classes
pagenum: 187; label: 4.1
title: Classes and Objects Revisited
pagenum: 188; label: 4.2
title: Anatomy of a Class
pagenum: 190; title: Instance Data
pagenum: 195; title: UML Class Diagrams
pagenum: 195; label: 4.3
title: Encapsulation
pagenum: 197; title: Visibility Modifiers
pagenum: 198; title: Accessors and Mutators
pagenum: 199; label: 4.4
title: Anatomy of a Method
pagenum: 200; title: The return Statement
pagenum: 202; title: Parameters
pagenum: 203; title: Local Data
pagenum: 203; title: Bank Account Example
pagenum: 204; label: 4.5
title: Constructors Revisited
pagenum: 209; label: 4.6
title: Graphical Objects
pagenum: 210; label: 4.7
title: Graphical User Interfaces
pagenum: 219; label: 4.8
title: Buttons
pagenum: 220; label: 4.9
title: Text Fields
pagenum: 224; title: Software Failure: Denver Airport Baggage Handling System
pagenum: 233; label: Chapter 5
title: Conditionals and Loops
pagenum: 235; label: 5.1
title: Boolean Expressions
pagenum: 236; title: Equality and Relational Operators
pagenum: 237; title: Logical Operators
pagenum: 238; label: 5.2
title: The if Statement
pagenum: 241; title: The if-else Statement
pagenum: 244; title: Using Block Statements
pagenum: 247; title: The Conditional Operator
pagenum: 251; title: Nested if Statements
pagenum: 252; label: 5.3
title: Comparing Data
pagenum: 255; title: Comparing Floats
pagenum: 255; title: Comparing Characters
pagenum: 256; title: Comparing Objects
pagenum: 257; label: 5.4
title: The switch Statement
pagenum: 259; label: 5.5
title: The while Statement
pagenum: 263; title: Infinite Loops
pagenum: 268; title: Nested Loops
pagenum: 269; title: Other Loop Controls
pagenum: 273; label: 5.6
title: Iterators
pagenum: 274; title: Reading Text Files
pagenum: 275; label: 5.7
title: The do Statement
pagenum: 279; label: 5.8
title: The for Statement
pagenum: 282; title: Iterable Objects and for Loops
pagenum: 287; title: Comparing Loops
pagenum: 287; label: 5.9
title: Drawing with Loops and Conditionals
pagenum: 288; label: 5.10
title: Determining Event Sources
pagenum: 294; label: 5.11
title: Dialog Boxes
pagenum: 297; label: 5.12
title: More Button Components
pagenum: 300; title: Check Boxes
pagenum: 300; title: Radio Buttons
pagenum: 304; title: Software Failure: Therac-25
pagenum: 321; label: Chapter 6
title: Object-Oriented Design
pagenum: 323; label: 6.1
title: Software Development Activities
pagenum: 324; label: 6.2
title: Identifying Classes and Objects
pagenum: 325; title: Assigning Responsibilities
pagenum: 327; label: 6.3
title: Static Class Members
pagenum: 327; title: Static Variables
pagenum: 328; title: Static Methods
pagenum: 328; label: 6.4
title: Class Relationships
pagenum: 332; title: Dependency
pagenum: 332; title: Dependencies Among Objects of the Same Class
pagenum: 333; title: Aggregation
pagenum: 339; title: The this Reference
pagenum: 343; label: 6.5
title: Interfaces
pagenum: 345; title: The Comparable Interface
pagenum: 350; title: The Iterator Interface
pagenum: 351; label: 6.6
title: Enumerated Types Revisited
pagenum: 352; label: 6.7
title: Method Design
pagenum: 355; title: Method Decomposition
pagenum: 355; title: Method Parameters Revisited
pagenum: 360; label: 6.8
title: Method Overloading
pagenum: 366; label: 6.9
title: Testing
pagenum: 368; title: Reviews
pagenum: 369; title: Defect Testing
pagenum: 369; label: 6.10
title: GUI Design
pagenum: 372; label: 6.11
title: Layout Managers
pagenum: 373; title: Flow Layout
pagenum: 375; title: Border Layout
pagenum: 379; title: Grid Layout
pagenum: 382; title: Box Layout
pagenum: 384; label: 6.12
title: Borders
pagenum: 388; label: 6.13
title: Containment Hierarchies
pagenum: 392; label: Chapter 7
title: Arrays
pagenum: 401; label: 7.1
title: Array Elements
pagenum: 402; label: 7.2
title: Declaring and Using Arrays
pagenum: 403; title: Bounds Checking
pagenum: 406; title: Alternate Array Syntax
pagenum: 411; title: Initializer Lists
pagenum: 412; title: Arrays as Parameters
pagenum: 412; label: 7.3
title: Arrays of Objects
pagenum: 414; label: 7.4
title: Command-Line Arguments
pagenum: 424; label: 7.5
title: Variable Length Parameter Lists
pagenum: 426; label: 7.6
title: Two-Dimensional Arrays
pagenum: 430; title: Multidimensional Arrays
pagenum: 434; label: 7.7
title: The ArrayList Class
pagenum: 435; title: Specifying an ArrayList Element Type
pagenum: 436; title: ArrayList Efficiency
pagenum: 438; label: 7.8
title: Polygons and Polylines
pagenum: 439; title: The Polygon Class
pagenum: 440; label: 7.9
title: Mouse Events
pagenum: 444; label: 7.10
title: Key Events
pagenum: 453; title: Software Failure: 2003 Northeast Blackout
pagenum: 467; label: Chapter 8
title: Inheritance
pagenum: 469; label: 8.1
title: Creating Subclasses
pagenum: 470; title: The protected Modifier
pagenum: 473; title: The super Reference
pagenum: 476; title: Multiple Inheritance
pagenum: 477; label: 8.2
title: Overriding Methods
pagenum: 481; title: Shadowing Variables
pagenum: 483; label: 8.3
title: Class Hierarchies
pagenum: 484; title: The Object Class
pagenum: 485; title: Abstract Classes
pagenum: 487; title: Interface Hierarchies
pagenum: 489; label: 8.4
title: Visibility
pagenum: 491; label: 8.5
title: Designing for Inheritance
pagenum: 492; title: Restricting Inheritance
pagenum: 493; label: 8.6
title: The Component Class Hierarchy
pagenum: 494; label: 8.7
title: Extending Adapter Classes
pagenum: 497; label: 8.8
title: The Timer Class
pagenum: 501; title: Software Failure: LA Air Traffic Control
pagenum: 511; label: Chapter 9
title: Polymorphism
pagenum: 513; label: 9.1
title: Late Binding
pagenum: 514; label: 9.2
title: Polymorphism via Inheritance
pagenum: 515; label: 9.3
title: Polymorphism via Interfaces
pagenum: 528; label: 9.4
title: Sorting
pagenum: 530; title: Selection Sort
pagenum: 531; title: Insertion Sort
pagenum: 537; title: Comparing Sorts
pagenum: 538; label: 9.5
title: Searching
pagenum: 539; title: Linear Search
pagenum: 539; title: Binary Search
pagenum: 541; title: Comparing Searches
pagenum: 545; label: 9.6
title: Designing for Polymorphism
pagenum: 545; label: 9.7
title: Event Processing
pagenum: 547; label: 9.8
title: File Choosers
pagenum: 548; label: 9.9
title: Color Choosers
pagenum: 551; label: 9.10
title: Sliders
pagenum: 553; title: Software Failure: Ariane 5 Flight 501
pagenum: 563; label: Chapter 10
title: Exceptions
pagenum: 565; label: 10.1
title: Exception Handling
pagenum: 566; label: 10.2
title: Uncaught Exceptions
pagenum: 567; label: 10.3
title: The try-catch Statement
pagenum: 568; title: The finally Clause
pagenum: 572; label: 10.4
title: Exception Propagation
pagenum: 573; label: 10.5
title: The Exception Class Hierarchy
pagenum: 576; title: Checked and Unchecked Exceptions
pagenum: 579; label: 10.6
title: I/O Exceptions
pagenum: 580; label: 10.7
title: Tool Tips and Mnemonics
pagenum: 584; label: 10.8
title: Combo Boxes
pagenum: 591; label: 10.9
title: Scroll Panes
pagenum: 597; label: 10.10
title: Split Panes
pagenum: 600; label: Chapter 11
title: Recursion
pagenum: 611; label: 11.1
title: Recursive Thinking
pagenum: 612; title: Infinite Recursion
pagenum: 613; title: Recursion in Math
pagenum: 613; label: 11.2
title: Recursive Programming
pagenum: 614; title: Recursion vs. Iteration
pagenum: 616; title: Direct vs. Indirect Recursion
pagenum: 617; label: 11.3
title: Using Recursion
pagenum: 619; title: Traversing a Maze
pagenum: 619; title: The Towers of Hanoi
pagenum: 623; label: 11.4
title: Recursion in Graphics
pagenum: 629; title: Tiled Pictures
pagenum: 629; title: Fractals
pagenum: 632; label: Chapter 12
title: Collections
pagenum: 645; label: 12.1
title: Collections and Data Structures
pagenum: 646; title: Separating Interface from Implementation
pagenum: 646; label: 12.2
title: Dynamic Representations
pagenum: 647; title: Dynamic Structures
pagenum: 647; title: A Dynamically Linked List
pagenum: 648; title: Other Dynamic List Representations
pagenum: 653; label: 12.3
title: Linear Data Structures
pagenum: 655; title: Queues
pagenum: 655; title: Stacks
pagenum: 656; label: 12.4
title: Non-Linear Data Structures
pagenum: 659; title: Trees
pagenum: 659; title: Graphs
pagenum: 661; label: 12.5
title: The Java Collections API
pagenum: 663; title: Generics
pagenum: 663; label: Appendix A
title: Glossary
pagenum: 671; label: Appendix B
title: Number Systems
pagenum: 695; label: Appendix C
title: The Unicode Character Set
pagenum: 703; label: Appendix D
title: Java Operators
pagenum: 707; label: Appendix E
title: Java Modifiers
pagenum: 713; label: Appendix F
title: Java Coding Guidelines
pagenum: 717; label: Appendix G
title: Java Applets
pagenum: 723; label: Appendix H
title: Regular Expressions
pagenum: 725; label: Appendix I
title: JavaDoc Documentation
pagenum: 727; label: Appendix J
title: The PaintBox Project
pagenum: 733; label: Appendix K
title: GUI Events
pagenum: 745; label: Appendix L
title: Java Syntax
pagenum: 749; label: Appendix M
title: The Java Class Library
pagenum: 763; label: Appendix N
title: Answers to Self-Review Questions
pagenum: 765; title: Index
pagenum: 819