Java Foundations: Introduction to Program Design and Data Structures: International Edition
0321486781

John Lewis, Radford University
Peter DePasquale, College of New Jersey
Joe Chase, Radford University

Publisher: Pearson Higher Education
Copyright: 2008
Format: Paper; 928 pp

ISBN-10: 0321486781
ISBN-13:9780321486783

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



Description
Inspired by the success their best-selling introductory programming text, Java Software Solutions, authors Lewis, DePasquale, and Chase now release Java Foundations. Their newest text is a comprehensive resource for instructors who want a two-semester introduction to programming textbook that includes data structures topics. Java Foundations introduces a Software Methodology early on and revisits it throughout to ensure students develop sound program development skills from the beginning. Control structures are covered before writing classes, providing a solid foundation of fundamental concepts and sophisticated topics.

Table Of Contents
Chapter 1 Introduction
1.1 The Java Programming Language
1.2 Program Development
1.3 Problem Solving
1.4 Software Development Activities
1.5 Object-Oriented Programming

Chapter 2 Data and Expressions
2.1 Character Strings
2.2 Variables and Assignment
2.3 Primitive Data Types
2.4 Expressions
2.5 Data Conversion
2.6 Reading Input Data
    
Chapter 3 Using Classes and Objects
3.1 Creating Objects
3.2 The String Class
3.3 Packages
3.4 The Random Class
3.5 The Math Class
3.6 Formatting Ouput
3.7 Enumberated Types
3.8 Wrapper Classes

Chapter 4 Conditionals and Loops
4.1 Boolean Expressions
4.2 The if Statement
4.3 Comparing Data
4.4 The switch Statement
4.5 The while Statement
4.6 Iterators
4.7 The do Statement
4.8 The for Statement

Chapter 5 Writing Classes
5.1 Classes and Objects Revisited
5.2 Anatomy of a Class
5.3 Encapsulation
5.4 Anatomy of a Method
5.5 Static Class Members
5.6 Class Relationships
5.7 Method Design
5.8 Method Overloading        

Chapter 6 Graphical User Interfaces
6.1 GUI Elements
6.2 More Components
6.3 Layout Managers
6.4 Mouse and Key Events
6.5 Dialog Boxes
6.6 Some Important Details
6.7 GUI Design

Chapter 7 Arrays
7.1 Array Elements
7.2 Declaring and Using Arrays
7.3 Arrays of Objects
7.4 Command-line Arguments
7.5 Variable-Length Parameter Lists
7.6 Two-Dimensional Arrays

Chapter 8 Inheritance
8.1 Creating Subclasses
8.2 Overriding Methods
8.3 Class Hierarchies
8.4 Visibility
8.5 Designing for Inheritance

Chapter 9 Polymorphism
9.1 Late Binding
9.2 Polymorphism via Inheritance
9.3 Interfaces
9.4 Polymorphism via Interfaces

Chapter 10 Exceptions
10.1 Exception Handling
10.2 Uncaught Exceptions
10.3 The try-catch Statement
10.4 Exception Propagation
10.5 The Exception Class Hierarchy
10.6 I/O Exceptions

Chapter 11 Building, Testing, and Debugging
11.1 Building Larger Applications: JFMail
11.2 Packages
11.3 Building Java Projects
11.4 Testing
11.5 Debugging

Chapter 12 Recursion
12.1 Recursive Thinking
12.2 Recursive Programming
12.3 Using Recursion

Chapter 13 Searching and Sorting
13.1 Searching
13.2 Sorting
13.3 Analysis of Algorithms
13.4 Analyzing Searching and Sorting Algorithms

Chapter 14 Collections and Linked Lists
14.1 Introduction to Collections
14.2 A Bag Collection
14.3 An Array Implementation of a Bag
14.4 Linked Lists
14.5 A Linked Implementation of a Bag

Chapter 15 Stacks and Queues
15.1 Stacks
15.2 Evaluating Postfix Expressions
15.3 Implementing Stacks with Arrays
15.4 Implementing Stacks with Links
15.5 The java.util.Stack Class
15.6 Queues
15.7 Radix Sort
15.8 Implementing Queues with Arrays
15.9 Implementing Queues with Circular Arrays
15.10 Implementing Queues with Links
15.11 Analysis of Stack and Queue Implementations

Chapter 16 Trees
16.1 Tree Terminology
16.2 Tree Traversals
16.3 Strategies for Implementing Trees
16.4 A Binary Tree Implementation
16.5 Decision Trees

Chapter 17 Search Trees and Heaps
17.1 Binary Search Trees
17.2 Binary Search Tree Implementation
17.3 Balance Binary Search Trees
17.4 Heaps
17.5 Heap Implementation
17.5 Heap Sort

Chapter 18 Graphs
18.1 Undirected Graphs
18.2 Directed Graphs
18.3 Weighted Graphs
18.4 Common Graph Algorithms
18.5 Strategies for Implementing Graphs
        
Appendixes
A Glossary
B Number Systems
C The Unicode Character Set
D Java Operators
E Java Modifiers
F Java Graphics
G Java Applets
H Regular Expressions
I Javadoc Documentation Generator
J Java Syntax

Index

Features
  • Presents objects in a gradual, natural manner. Concepts that overlap with procedural programming, such as methods and their invocation, are discussed in terms of an object-oriented approach.
  • Loaded with fully implemented color-coded examples, intertwining small examples, and realistic larger examples that are easy to understand.
  • Offers complete chapter on Graphical User Interfaces that includes engaging graphical examples.
  • Exclusive coverage of software-testing and debugging effective practices.
  • Includes separate chapter on Input/Output (I/O) concepts.
  • Provides plenty of opportunity for practice with extensive end-of-chapter questions, exercises, and projects.
  • Each new copy of this text comes with a Student Resource Disk that includes source code, appendices, case studies, JDK 6.0, NetBeans™ IDE, jGrasp™ IDE, TextPad®, Eclipse™ and DrJava.
  • MyCodeMate, available for the First 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 MyCodeMate.


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 Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | Website | Available
ISBN-10: 0321489373 | ISBN-13: 9780321489371


Instructor Supplements
Source Code for Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321489357 | ISBN-13: 9780321489357

Project Solutions for Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321487524 | ISBN-13: 9780321487520

PowerPoint Slides for Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321489365 | ISBN-13: 9780321489364

Labs for Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321490975 | ISBN-13: 9780321490971

Test Bank and TestGen for Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | On-line Supplement | Available
ISBN-10: 0321487532 | ISBN-13: 9780321487537

MyCodeMate Companion Website for Java Foundations
Lewis, DePasquale & Chase
© 2008 | Addison-Wesley | Website | Available
ISBN-10: 0321489373 | ISBN-13: 9780321489371