An edition of Starting Out with Java (2004)

Starting Out with Java

From Control Structures through Data Structures

1 Pap/Cdr edition
  • 5.0 (1 rating)
  • 8 Want to read
  • 1 Have read

My Reading Lists:

Create a new list

  • 5.0 (1 rating)
  • 8 Want to read
  • 1 Have read

Buy this book

Last edited by Drini
September 13, 2025 | History
An edition of Starting Out with Java (2004)

Starting Out with Java

From Control Structures through Data Structures

1 Pap/Cdr edition
  • 5.0 (1 rating)
  • 8 Want to read
  • 1 Have read

"Tony Gaddis's accessible, step-by-step style helps beginning students understand the important details necessary to become skilled programmers at an introductory level. Gaddis motivates the study of both programming skills and a programming language by presenting all the details needed to understand the "how" and the "why" - but never losing sight of the fact that most beginners struggle with this material. His approach is both gradual and highly accessible, ensuring that students get the logic behind developing high-quality programs." "In Starting Out with Java: From Control Structures through Objects, Gaddis covers procedural programming - control structures and methods - before introducing object-oriented programming. As with all Gaddis texts, clear and easy-to-read code listings, concise and practical real-world examples, and an abundance of exercises appear in every chapter."--BOOK JACKET.

Publish Date
Publisher
Addison Wesley
Language
English
Pages
1319

Buy this book

Previews available in: English

Edition Availability
Cover of: Starting out with Java
Starting out with Java: early objects
2008, Pearson/Addison Wesley
in English - 3rd ed.
Cover of: Starting out with Java
Starting out with Java: from control structures through objects
2008, Pearson/Addison Wesley
in English - 4th ed.
Cover of: Starting Out with Java
Starting Out with Java: From Control Structures through Objects (3rd Edition)
January 17, 2007, Addison Wesley
Paperback in English - 3 edition
Cover of: Starting Out with Java
Starting Out with Java: Early Objects (3rd Edition)
February 20, 2007, Addison Wesley
Paperback in English - 3 edition
Cover of: Starting Out with Java
Starting Out with Java: Industrial Strength
June 1, 2006, Addison Wesley
Paperback in English - 1 edition
Cover of: Starting Out with Java
Starting Out with Java: From Control Structures through Data Structures
August 4, 2006, Addison Wesley
Paperback in English - 1 Pap/Cdr edition
Cover of: Starting Out with Java
Starting Out with Java
January 15, 2004, Addison Wesley
Paperback in English - 1 edition

Add another edition?

Book Details


Table of Contents

Preface
Page xv
Chapter 1. Introduction to Computers and Java
Page 1
1.1. Introduction
Page 1
1.2. Why Program?
Page 1
1.3. Computer Systems: Hardware and Software
Page 2
1.4. Programming Languages
Page 6
1.5. What Is a Program Made Of?
Page 9
1.6. The Programming Process
Page 16
1.7. Object-Oriented Programming
Page 19
Review Questions and Exercises
Page 21
Programming Challenge
Page 25
Chapter 2. Java Fundamentals
Page 27
2.1. The Parts of a Java Program
Page 27
2.2. The print and println Methods and the Java API
Page 33
2.3. Variables and Literals
Page 39
2.4. Primitive Data Types
Page 45
2.5. Arithmetic Operators
Page 56
2.6. Combined Assignment Operators
Page 62
2.7. Conversion between Primitive Data Types
Page 63
2.8. Creating Named Constants with final
Page 67
2.9. The String Class
Page 69
2.10. Scope
Page 74
2.11. Comments
Page 76
2.12. Programming Style
Page 81
2.13. Reading Keyboard Input
Page 83
2.14. Dialog Boxes
Page 91
2.15. Common Errors to Avoid
Page 98
Review Questions and Exercises
Page 99
Programming Challenges
Page 104
Chapter 3. Decision Structures
Page 107
3.1. The if Statement
Page 107
3.2. The if-else Statement
Page 117
3.3. The if-else-if Statement
Page 120
3.4. Nested if Statements
Page 126
3.5. Logical Operators
Page 133
3.6. Comparing String Objects
Page 139
3.7. More about Variable Declaration and Scope
Page 145
3.8. The Conditional Operator (Optional)
Page 146
3.9. The switch Statement
Page 148
3.10. Creating Objects with the DecimalFormat Class
Page 155
3.11. The printf Method
Page 161
3.12. Common Errors to Avoid
Page 164
Review Questions and Exercises
Page 165
Programming Challenges
Page 171
Chapter 4. Loops and Files
Page 175
4.1. The Increment and Decrement Operators
Page 175
4.2. The while Loop
Page 179
4.3. Using the while Loop for Input Validation
Page 184
4.4. The do-while Loop
Page 188
4.5. The for Loop
Page 191
4.6. Running Totals and Sentinel Values
Page 199
4.7. Nested Loops
Page 203
4.8. The break and continue Statements (Optional)
Page 204
4.9. Deciding Which Loop to Use
Page 205
4.10. Introduction to File Input and Output
Page 205
4.11. The Random Class
Page 221
4.12. Common Errors to Avoid
Page 223
Review Questions and Exercises
Page 224
Programming Challenges
Page 231
Chapter 5. Methods
Page 235
5.1. Introduction to Methods
Page 235
5.2. Passing Arguments to a Method
Page 245
5.3. More about Local Variables
Page 257
5.4. Returning a Value from a Method
Page 259
5.5. Problem Solving with Methods
Page 265
5.6. Common Errors to Avoid
Page 270
Review Questions and Exercises
Page 271
Programming Challenges
Page 275
Chapter 6. A First Look at Classes
Page 281
6.1. Classes and Objects
Page 281
6.2. Instance Fields and Methods
Page 304
6.3. Constructors
Page 309
6.4. Overloading Methods and Constructors
Page 313
6.5. Scope of Instance Fields
Page 322
6.6. Packages and import Statements
Page 323
6.7. Focus on Object-Oriented Design: Finding the Classes and Their Responsibilities
Page 325
6.8. Common Errors to Avoid
Page 332
Review Questions and Exercises
Page 332
Programming Challenges
Page 338
Chapter 7. A First Look at GUI Applications
Page 343
7.1. Introduction
Page 343
7.2. Creating Windows
Page 346
7.3. Equipping GUI Classes with a main Method
Page 374
7.4. Layout Managers
Page 375
7.5. Radio Buttons and Check Boxes
Page 392
7.6. Borders
Page 403
7.7. Focus on Problem Solving: Extending Classes from JPanel
Page 406
7.8. Using Console Output to Debug a GUI Application
Page 418
7.9. Common Errors to Avoid
Page 423
Review Questions and Exercises
Page 423
Programming Challenges
Page 427
Chapter 8. Arrays and the ArrayList Class
Page 431
8.1. Introduction to Arrays
Page 431
8.2. Processing Array Elements
Page 441
8.3. Passing Arrays as Arguments to Methods
Page 450
8.4. Some Useful Array Algorithms and Operations
Page 454
8.5. Returning Arrays from Methods
Page 463
8.6. String Arrays
Page 465
8.7. Arrays of Objects
Page 468
8.8. The Sequential Search Algorithm
Page 471
8.9. Two-Dimensional Arrays
Page 474
8.10. Arrays with Three or More Dimensions
Page 486
8.11. Command-Line Arguments and Variable-Length Argument Lists
Page 487
8.12. The ArrayList Class
Page 499
8.13. Common Errors to Avoid
Page 501
Review Questions and Exercises
Page 502
Programming Challenges
Page 506
Chapter 9. A Second Look at Classes and Objects
Page 513
9.1. Static Class Members
Page 513
9.2. Passing Objects as Arguments to Methods
Page 520
9.3. Returning Objects from Methods
Page 523
9.4. The toString Method
Page 525
9.5. Writing an equals Method
Page 529
9.6. Methods That Copy Objects
Page 532
9.7. Aggregation
Page 535
9.8. The this Reference Variable
Page 548
9.9. Enumerated Types
Page 551
9.10. Garbage Collection
Page 560
9.11. Focus on Object-Oriented Design: Class Collaboration
Page 562
9.12. Common Errors to Avoid
Page 566
Review Questions and Exercises
Page 567
Programming Challenges
Page 571
Chapter 10. Text Processing and More about Wrapper Classes
Page 577
10.1. Introduction to Wrapper Classes
Page 577
10.2. Character Testing and Conversion with the Character Class
Page 578
10.3. More String Methods
Page 586
10.4. The StringBuffer Class
Page 600
10.5. Tokenizing Strings
Page 607
10.6. Wrapper Classes for the Numeric Data Types
Page 615
10.7. Focus on Problem Solving: The TestScoreReader Class
Page 618
10.8. Common Errors to Avoid
Page 623
Review Questions and Exercises
Page 623
Programming Challenges
Page 627
Chapter 11. Inheritance
Page 631
11.1. What Is Inheritance?
Page 631
11.2. Calling the Superclass Constructor
Page 644
11.3. Overriding Superclass Methods
Page 652
11.4. Protected Members
Page 661
11.5. Chains of Inheritance
Page 667
11.6. The Object Class
Page 673
11.7. Polymorphism
Page 675
11.8. Abstract Classes and Abstract Methods
Page 680
11.9. Interfaces
Page 686
11.10. Common Errors to Avoid
Page 699
Review Questions and Exercises
Page 700
Programming Challenges
Page 705
Chapter 12. Exceptions and More about Stream I/O
Page 711
12.1. Handling Exceptions
Page 711
12.2. Throwing Exceptions
Page 733
12.3. More about Input/Output Streams
Page 739
12.4. Advanced Topics: Binary Files, Random Access Files, and Object Serialization
Page 748
12.5. Common Errors to Avoid
Page 765
Review Questions and Exercises
Page 766
Programming Challenges
Page 773
Chapter 13. Advanced GUI Applications
Page 775
13.1. The Swing and AWT Class Hierarchy
Page 775
13.2. Read-Only Text Fields
Page 776
13.3. Lists
Page 778
13.4. Combo Boxes
Page 794
13.5. Displaying Images in Labels and Buttons
Page 800
13.6. Mnemonics and Tool Tips
Page 806
13.7. File Choosers and Color Choosers
Page 808
13.8. Menus
Page 812
13.9. More about Text Components: Text Areas and Fonts
Page 821
13.10. Sliders
Page 825
13.11. Look and Feel
Page 830
13.12. Common Errors to Avoid
Page 832
Review Questions and Exercises
Page 833
Programming Challenges
Page 838
Chapter 14. Applets and More
Page 843
14.1. Introduction to Applets
Page 843
14.2. A Brief Introduction to HTML
Page 845
14.3. Creating Applets with Swing
Page 855
14.4. Using AWT for Portability
Page 862
14.5. Drawing Shapes
Page 867
14.6. Handling Mouse Events
Page 889
14.7. Timer Objects
Page 899
14.8. Playing Audio
Page 903
14.9. Common Errors to Avoid
Page 907
Review Questions and Exercises
Page 908
Programming Challenges
Page 914
Chapter 15. Recursion
Page 917
15.1. Introduction to Recursion
Page 917
15.2. Solving Problems with Recursion
Page 920
15.3. Examples of Recursive Methods
Page 925
15.4. The Towers of Hanoi
Page 931
15.5. Common Errors to Avoid
Page 935
Review Questions and Exercises
Page 936
Programming Challenges
Page 939
Chapter 16. Sorting, Searching, and Algorithm Analysis
Page 941
16.1. Introduction to Sorting Algorithms
Page 941
16.2. Introduction to Search Algorithms
Page 966
16.3. Analysis of Algorithms
Page 977
16.4. Common Errors to Avoid
Page 984
Review Questions and Exercises
Page 985
Programming Challenges
Page 988
Chapter 17. Generics
Page 991
17.1. Introduction to Generics
Page 991
17.2. Writing a Generic Class
Page 994
17.3. Passing Objects of a Generic Class to a Method
Page 1002
17.4. Writing Generic Methods
Page 1008
17.5. Constraining a Type Parameter in a Generic Class
Page 1009
17.6. Inheritance and Generic Classes
Page 1012
17.7. Defining Multiple Type Parameters
Page 1016
17.8. Generics and Interfaces
Page 1019
17.9. Erasure
Page 1023
17.10. Restrictions on the Use of Generic Types
Page 1026
17.11. Common Errors to Avoid
Page 1028
Review Questions and Exercises
Page 1028
Programming Challenges
Page 1032
Chapter 18. Collections
Page 1035
18.1. Introduction to the Java Collections Framework
Page 1035
18.2. Lists
Page 1041
18.3. Sets
Page 1061
18.4. Maps
Page 1078
18.5. The Collections Class
Page 1092
18.6. Common Errors to Avoid
Page 1096
Review Questions and Exercises
Page 1096
Programming Challenges
Page 1100
Chapter 19. Array-Based Lists
Page 1103
19.1. Introduction to Lists
Page 1103
19.2. Creating an Array-Based List to Hold String Objects
Page 1104
19.3. Creating a Generic Array-Based List
Page 1125
19.4. Writing Iterator Classes and Iterable Lists
Page 1140
Review Questions and Exercises
Page 1147
Programming Challenges
Page 1149
Chapter 20. Linked Lists
Page 1151
20.1. Introduction to Linked Lists
Page 1151
20.2. Operations on Linked Lists
Page 1158
20.3. Doubly-Linked and Circularly-Linked Lists
Page 1170
20.4. Recursion on Linked Lists
Page 1179
20.5. Common Errors to Avoid
Page 1190
Review Questions and Exercises
Page 1190
Programming Challenges
Page 1194
Chapter 21. Stacks and Queues
Page 1197
21.1. Stacks and Their Applications
Page 1197
21.2. Array Implementation of Stacks
Page 1200
21.3. Linked Implementation of Stacks
Page 1206
21.4. Queues and Their Applications
Page 1211
21.5. Array Implementation of Queues
Page 1211
21.6. Linked List Implementation of Queues
Page 1222
21.7. Generic Implementation of Stacks and Queues
Page 1227
21.8. Common Errors to Avoid
Page 1230
Review Questions and Exercises
Page 1231
Programming Challenges
Page 1233
Chapter 22. Binary Trees, AVL Trees, and Priority Queues
Page 1235
22.1. Binary Trees and Their Applications
Page 1235
22.2. Binary Search Trees
Page 1245
22.3. AVL Trees
Page 1262
22.4. Priority Queues
Page 1275
22.5. Common Errors to Avoid
Page 1289
Review Questions and Exercises
Page 1289
Programming Challenges
Page 1293
Index
Page 1295

Classifications

Library of Congress
QA76.73.J38 G33 2007

The Physical Object

Format
Paperback
Number of pages
1319
Dimensions
9.9 x 7.9 x 1.7 inches
Weight
4.8 pounds

Edition Identifiers

Open Library
OL9463606M
ISBN 10
0321421027
ISBN 13
9780321421029
LCCN
2006022339
OCLC/WorldCat
70267180
LibraryThing
3143600
Goodreads
1150964

Work Identifiers

Work ID
OL5825094W

Community Reviews (0)

No community reviews have been submitted for this work.

Lists

History

Download catalog record: RDF / JSON / OPDS | Wikipedia citation
September 13, 2025 Edited by Drini Edited without comment.
September 13, 2025 Edited by Drini Add TOC from Tocky
April 21, 2025 Edited by ImportBot Redacting ocaids
December 5, 2022 Edited by ImportBot import existing book
April 30, 2008 Created by an anonymous user Imported from amazon.com record