
Brief Java: Early Objects, Enhanced eText
by Cay S. Horstmann
9th Edition
Publisher: Wiley
Book Details
| Print ISBN | 9781119499268 |
| eText ISBN | 9781119499138 |
| Publisher | Wiley |
| Publishing Year | 2019 |
| Edition | 9th Edition |
| Language | English |
| Pages | 387 |
Brief Java: Early Objects, Enhanced eText, 9th Edition introduces fundamental programming principles and software development using Java. The textbook assumes no previous programming background and requires only a modest knowledge of high school algebra.
Coverage introduces objects and classes from the standard library early before expanding into arrays, array lists, class implementation, inheritance, and interfaces. Dedicated treatment of object-oriented design begins in Chapter 8.
Interactive practice sections feature live coding samples that provide instant feedback. These activities are paired with open-ended review exercises, programming tasks, and projects to guide skill acquisition.
Table of Contents
Chapter 1: Introduction
- • 1.1 Computer Programs
- • 1.2 The Anatomy of a Computer
- • 1.3 The Java Programming Language
- • 1.4 Becoming Familiar with Your Programming Environment
- • 1.5 Analyzing Your First Program
- • 1.6 Errors
- • 1.7 PROBLEM SOLVING Algorithm Design
Chapter 2: Using Objects
- • 2.1 Objects and Classes
- • 2.2 Variables
- • 2.3 Calling Methods
- • 2.4 Constructing Objects
- • 2.5 Accessor and Mutator Methods
- • 2.6 The API Documentation
- • 2.7 Implementing a Test Program
- • 2.8 Object References
- • 2.9 Graphical Applications
- • 2.10 Ellipses, Lines, Text, and Color
Chapter 3: Implementing Classes
- • 3.1 Instance Variables and Encapsulation
- • 3.2 Specifying the Public Interface of a Class
- • 3.3 Providing the Class Implementation
- • 3.4 Unit Testing
- • 3.5 PROBLEM SOLVING Tracing Objects
- • 3.6 Local Variables
- • 3.7 The this Reference
- • 3.8 Shape Classes
Chapter 4: Fundamental Data Types
- • 4.1 Numbers
- • 4.2 Arithmetic
- • 4.3 Input and Output
- • 4.4 PROBLEM SOLVING First Do it By Hand
- • 4.5 Strings
Chapter 5: Decisions
- • 5.1 The if Statement
- • 5.2 Comparing Values
- • 5.3 Multiple Alternatives
- • 5.4 Nested Branches
- • 5.5 PROBLEM SOLVING Flowcharts
- • 5.6 PROBLEM SOLVING Selecting Test Cases
- • 5.7 Boolean Variables and Operators
- • 5.8 APPLICATION Input Validation
Chapter 6: Loops
- • 6.1 The while Loop
- • 6.2 PROBLEM SOLVING Hand-Tracing
- • 6.3 The for Loop
- • 6.4 The do Loop
- • 6.5 APPLICATION Processing Sentinel Values
- • 6.6 PROBLEM SOLVING Storyboards
- • 6.7 Common Loop Algorithms
- • 6.8 Nested Loops
- • 6.9 APPLICATION Random Numbers and Simulations
- • 6.10 Using a Debugger
Chapter 7: Arrays and Array Lists
- • 7.1 Arrays
- • 7.2 The Enhanced for Loop
- • 7.3 Common Array Algorithms
- • 7.4 PROBLEM SOLVING Adapting Algorithms
- • 7.5 PROBLEM SOLVING Discovering Algorithms by Manipulating Physical Objects
- • 7.6 Two-Dimensional Arrays
- • 7.7 Array Lists
- • 7.8 Regression Testing
Chapter 8: Designing Classes
- • 8.1 Discovering Classes
- • 8.2 Designing Good Methods
- • 8.3 PROBLEM SOLVING Patterns for Object Data
- • 8.4 Static Variables and Methods
- • 8.5 PROBLEM SOLVING Solve a Simpler Problem First
- • 8.6 Packages
- • 8.7 Unit Test Frameworks
Chapter 9: Inheritance
- • 9.1 Inheritance Hierarchies
- • 9.2 Implementing Subclasses
- • 9.3 Overriding Methods
- • 9.4 Polymorphism
- • 9.5 Object: The Cosmic Superclass
Chapter 10: Interfaces
- • 10.1 Using Interfaces for Algorithm Reuse
- • 10.2 Working with Interface Variables
- • 10.3 The Comparable Interface
- • 10.4 Using Interfaces for Callbacks
- • 10.5 Inner Classes
- • 10.6 Mock Objects
- • 10.7 Event Handling
- • 10.8 Building Applications with Buttons
- • 10.9 Processing Timer Events
- • 10.10 Mouse Events
Chapter 11: Input/Output and Exception Handling
- • 11.1 Reading and Writing Text Files
- • 11.2 Text Input and Output
- • 11.3 Command Line Arguments
- • 11.4 Exception Handling
- • 11.5 APPLICATION Handling Input Errors
Chapter 12: Object-Oriented Design
- • 12.1 Classes and Their Responsibilities
- • 12.2 Relationships Between Classes
- • 12.3 APPLICATION Printing an Invoice
Chapter 13: RECURSION*(ETEXT ONLY)
- • 13.1 Triangle Numbers
- • 13.2 Recursive Helper Methods
- • 13.3 The Efficiency of Recursion
- • 13.4 Permutations
- • 13.5 Mutual Recursion
- • 13.6 Backtracking
Chapter 14: SORTING AND SEARCHING*(ETEXT ONLY)
- • 14.1 Selection Sort
- • 14.2 Profiling the Selection Sort Algorithm
- • 14.3 Analyzing the Performance of the Selection Sort Algorithm
- • 14.4 Merge Sort
- • 14.5 Analyzing the Merge Sort Algorithm
- • 14.6 Searching
- • 14.7 PROBLEM SOLVING Estimating the Running Time of an Algorithm
- • 14.8 Sorting and Searching in the Java Library
Chapter 15: The Java Collections Framework*(ETEXT ONLY)
- • 15.1 An Overview of the Collections Framework
- • 15.2 Linked Lists
- • 15.3 Sets
- • 15.4 Maps
- • 15.5 Stacks, Queues, and Priority Queues
- • 15.6 Stack and Queue Applications
Chapter Appendix A: The Basic Latin and Latin-1 Subsets of Unicode
Chapter Appendix B: Java Operator Summary
Chapter Appendix C: Java Reserved Word Summary
Chapter Appendix D: The Java Library
Chapter Appendix E: Java Language Coding Guidelines
Chapter Appendix F: Tool Summary (ETEXT ONLY)
Chapter Appendix G: Number Systems (ETEXT ONLY)
Chapter Appendix H: UML Summary (ETEXT ONLY)
Chapter Appendix I: Java Syntax Summary (ETEXT ONLY)
Chapter Appendix J: Html Summary (ETEXT ONLY)
Customer Reviews
0.0
0 reviews
No reviews yet. Be the first to review this book!
Write a Review
Reviewed by GradeFocus Editorial Team





