Starting Out with Java: Early Objects, 3/E
0321497686

Tony Gaddis, Haywood Community College

Publisher: Addison-Wesley
Copyright: 2008
Format: Paper Bound w/CD-ROM; 1008 pp

ISBN-10: 0321497686
ISBN-13:9780321497680

Our Price: £45.99
Status: Instock
Published: 05 Apr 2007



Description
Tony Gaddis’s accessible, step-by-step presentation 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 the Java 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 understand the logic behind developing high-quality programs.

In Starting Out with Java: Early Objects, Gaddis looks at objects—the fundamentals of classes and methods—before covering procedural 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.

Table Of Contents
Preface

Chapter 1: Introduction to Computers and Java
1.1 Introduction
1.2 Why Program?   
1.3 Computer Systems: Hardware and Software
1.4 Programming Languages
1.5 What Is a Program Made of?
1.6 The Programming Process
1.7 Object-Oriented Programming

Chapter 2: Java Fundamentals
2.1 The Parts of a Java Program
2.2 The print and println Methods, and the Java API
2.3 Variables and Literals
2.4 Primitive Data Types
2.5 Arithmetic Operators
2.6 Combined Assignment Operators
2.7 Conversion between Primitive Data Types
2.8 Creating Named Constants with final
2.9 The String Class
2.10 Scope
2.11 Comments
2.12 Programming Style
2.13 Reading Keyboard Input
2.14 Dialog Boxes
2.15 Common Errors to Avoid

Chapter 3: A First Look at Classes and Objects
3.1 Classes
3.2 More about Passing Arguments
3.3 Instance Fields and Methods
3.4 Constructors
3.5 A BankAccount Class
3.6 Classes, Variables, and Scope
3.7 Packages and import Statements
3.8 Focus on Object-Oriented Design: Finding the Classes and Their Responsibilities
3.9 Common Errors to Avoid

Chapter 4: Decision Structures
4.1 The if Statement
4.2 The if-else Statement
4.3 The Payroll Class
4.4 The if-else-if Statement
4.5 Nested if Statements
4.6 Logical Operators
4.7 Comparing String Objects
4.8 More about Variable Declaration and Scope
4.9 The Conditional Operator (Optional)
4.10 The switch Statement
4.11 Formatting Numbers with the DecimalFormat Class
4.12 Focus on Problem Solving: The SalesCommission Class
4.13 The Random Class
4.14 Common Errors to Avoid

Chapter 5: Loops and Files  
5.1 The Increment and Decrement Operators
5.2 The while Loop
5.3 Using the while Loop for Input Validation
5.4 The do-while Loop
5.5 The for Loop
5.6 Running Totals and Sentinel Values
5.7 Nested Loops
5.8 The break and continue Statements
5.9 Deciding Which Loop to Use
5.10 Introduction to File Input and Output
5.11 Common Errors to Avoid

Chapter 6: A Second Look at Classes and Objects
6.1 Static Class Members
6.2 Overloaded Methods
6.3 Overloaded Constructors
6.4 Passing Objects as Arguments to Methods
6.5 Returning Objects from Methods
6.6 The toString Method
6.7 Writing an equals Method
6.8 Methods That Copy Objects
6.9 Aggregation
6.10 The this Reference Variable
6.11 Inner Classes
6.12 Enumerated Types
6.13 Garbage Collection
6.14 Focus on Object-Oriented Design: Class Collaboration
6.15 Common Errors to Avoid  

Chapter 7: Arrays and the Array List Class
7.1 Introduction to Arrays
7.2 Processing Array Contents
7.3 Passing Arrays as Arguments to Methods
7.4 Some Useful Array Algorithms and Operations
7.5 Returning Arrays from Methods
7.6 String Arrays
7.7 Arrays of Objects
7.8 The Sequential Search Algorithm
7.9 The Selection Sort and the Binary Search Algorithms
7.10 Two-Dimensional Arrays
7.11 Arrays with Three or More Dimensions
7.12 Command-Line Arguments and Variable-Length Argument Lists
7.13 The ArrayList Class
7.14 Common Errors to Avoid  

Chapter 8: Text Processing and Wrapper Classes  
8.1 Introduction to Wrapper Classes  
8.2 Character Testing and Conversion with the Character Class  
8.3 More about String Objects  
8.4 The StringBuilder Class  
8.5 Tokenizing Strings  
8.6 Wrapper Classes for the Numeric Data Types  
8.7 Focus on Problem Solving: The TestScoreReader Class  
8.8 Common Errors to Avoid

Chapter 9: Inheritance  
9.1 What Is Inheritance?  
9.2 Calling the Superclass Constructor  
9.3 Overriding Superclass Methods  
9.4 Protected Members  
9.5 Classes That Inherit from Subclasses
9.6 The Object Class  
9.7 Polymorphism  
9.8 Abstract Classes and Abstract Methods  
9.9 Interfaces  
9.10 Common Errors to Avoid

Chapter 10: Exceptions and Advanced File I/O
10.1 Handling Exceptions  
10.2 Throwing Exceptions  
10.3 Advanced Topics: Binary Files, Random Access Files, and Object Serialization  
10.4 Common Errors to Avoid

Chapter 11: GUI Applications—Part 1
11.1 Introduction
11.2 Dialog Boxes
11.3 Creating Windows
11.4 Equipping GUI Classes with a main Method
11.5 Layout Managers
11.6 Radio Buttons and Check Boxes
11.7 Borders
11.8 Focus on Problem Solving: Extending the JPanel Class
11.9 Splash Screens
11.10 Using Console Output to Debug a GUI Application
11.11 Common Errors to Avoid

Chapter 12: GUI Applications—Part 2
12.1 Read-Only Text Fields
12.2 Lists
12.3 Combo Boxes
12.4 Displaying Images in Labels and Buttons
12.5 Mnemonics and Tool Tips
12.6 File Choosers and Color Choosers
12.7 Menus
12.8 More about Text Components: Text Areas and Fonts
12.9 Sliders
12.10 Look and Feel
12.11 Common Errors to Avoid

Chapter 13: Applets and More  
13.1 Introduction to Applets
13.2 A Brief Introduction to HTML  
13.3 Creating Applets with Swing  
13.4 Using AWT for Portability
13.5 Drawing Shapes  
13.6 Handling Mouse Events  
13.7 Timer Objects
13.8 Playing Audio  
13.9 Common Errors to Avoid

Chapter 14: Recursion
14.1 Introduction to Recursion
14.2 Solving Problems with Recursion
14.3 Examples of Recursive Methods
14.4 A Recursive Binary Search Method
14.5 The Towers of Hanoi
14.6 Common Errors to Avoid

Appendix A Getting Started with Alice
Index

Appendixes and Case Studies on the Student CD-ROM
Appendix B The ASCII/Unicode Characters
Appendix C Operator Precedence and Associativity
Appendix D Java Key Words
Appendix E Installing the JDK and JDK Documentation
Appendix F Using the javadoc Utility
Appendix G More about the Math Class
Appendix H Packages
Appendix I Working with Records and Random Access Files
Appendix J Using JBuilder 8
Appendix K The QuickSort Algorithm
Appendix L Answers to Checkpoints Questions
Appendix M Answers to Odd-Numbered Review Questions
Case Study 1 The Amortization Class
Case Study 2 The PinTester Class
Case Study 3 Parallel Arrays
Case Study 4 The SerialNumber Class
Case Study 5 A Simple Text Editor Application

Features
  • Objects and methods are introduced before procedural programming.
  • The Third Edition is fully compatible with both Java (J2SE) 5.0 and the new version, Java 6.0.
  • A clear and student-friendly writing style with stepped-out explanations simplifies for beginning programmers.
  • Concise, practical, and real-world examples that students understand and relate to foster motivation and retention.
  • A variety of exercises in each chapter encourages students to put concepts to work as they are learned.
  • Each new copy of the Third Edition comes with a Student Resource Disk that includes source code, appendices, case studies, JDK 6.0, NetBeans™ IDE, jGrasp™ IDE, TextPad®, Eclipse™ and DrJava.


New To This Edition
  • The Third Edition is updated to reflect the most recent developments, including:
    • The Scanner class is used to read files.
    • The ArrayList class replaces of the Vector class.
    • The StringBuilder class is used instead of StringBuffer.
    • A new section about string pooling and the String class constructor has been added to the Text Processing and Wrapper Classes chapter.
    • Features of Java™ SE 6, including material on Splash Screen Support.
  • An appendix, Getting Started with Alice, presents an overview of the Alice programming environment.
  • MyCodeMate, available for the Third Edition, is a Web-based, textbook-specific homework tool and programming resource for an introduction to programming course. It provides a wide range of tools that students can use to help them learn programming concepts, prepare for tests, and earn better grades in the introductory programming course. Students can work on programming problems from this text or homework problems created by their professors, and receive guided hints with page references and English explanations of compiler errors. Instructors can assign textbook-specific or self-created homework problems, preset style attributes, view students’ code and class compiler error logs, and track homework completion. A complimentary subscription is offered when an access code is ordered packaged with a new copy of this text. Subscriptions may also be purchased online. For more information visit www.myCodeMate.com.

Student Supplements
CS Support-Student Support Material
Addison-Wesley
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321446852 | ISBN-13: 9780321446855
The "CS Support" Website is a central repository for additional supplemental items that students and general reader will find useful when working with this textbook. The material for each book varies, but may include such items as: Source Code files, Figures from the book, Answers to some review questions, etc.. To see what items are available for this textbook, visit http://www.aw.com/cssupport.

MyCodeMate Companion Website for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | Website | Available
ISBN-10: 0321499964 | ISBN-13: 9780321499967


Instructor Supplements
Powerpoint Slides for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321499956 | ISBN-13: 9780321499950

Solutions for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321500008 | ISBN-13: 9780321500007

Source Code for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321499999 | ISBN-13: 9780321499998

Test Bank for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321499980 | ISBN-13: 9780321499981

WebCT Test Item File for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321511662 | ISBN-13: 9780321511669

Student Files for the Lab Manual for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 032151694X | ISBN-13: 9780321516947

Solutions for the Lab Manual for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321516931 | ISBN-13: 9780321516930

Lab Manual for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321522192 | ISBN-13: 9780321522191

Blackboard Test Item Files for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Instock
ISBN-10: 0321507649 | ISBN-13: 9780321507648

TestGen for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321499972 | ISBN-13: 9780321499974

MyCodeMate Companion Website for Starting Out with Java: Early Objects, 3/E
Gaddis
© 2008 | Addison-Wesley | Website | Available
ISBN-10: 0321499964 | ISBN-13: 9780321499967