Synopses & Reviews
Java Software Solutions is the premier text for teaching beginning programmers how to design and implement high-quality software using Java. Instructors trust the book's focus on developing high-quality software using Java. Instructors trust the book's focus on developing problem-solving and design skills alongside solid programming techniques. Students appreciate its clear writing and wealth of realistic programming examples. The Sixth Edition introduces improvements that make this book an even more useful teaching and learning tool.
KEY FEATURES
- A measured approach to objects teaches students first how to use objects and then how to write them.
- Fully implemented examples demonstrate specific concepts -- small, readily understandable examples are intertwined with larger, more realistic ones.
- An optional Graphics Track covers graphics and GUIs at the end of each chapter, allowing for flexibility of coverage.
- Extensive review and practice features include end-of-chapter questions, exercises, projects, and new end-of-section exercises.
- NEW! Software Failure vignettes discuss real-world flaws in software design, encouraging students to adopt sound design practices from the beginning.
- The text is completely compatible with Java 6.0.
- NEW! Video Notes, presented by the author, explain topics visually in an easy-to-follow format, giving students the extra help they need to grasp important concepts. Each chapter has multiple Video Notes that walk students through examples and problem solutions. Conveniently accessible on www.aw.com/lewis or CD-ROM (available separately).
myCodeMate 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 homeowrk 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.
Synopsis
With lab exercises covering important topics in all 12 chapters, this lab manual will accompany the Fifth Edition of the Lewis and Loftus, Java Software Solutions. The exercises provide hands-on experience with programming concepts introduced in an introductory programming course. Manual solutions and source code are available online.
Synopsis
As the worldwide best seller for introductory programming using the Java™ programming language, Java Software Solutionsis the premiere model of text that teaches a foundation of programming techniques to foster well-designed object-oriented software. Introduction; Data and Expressions; Using Classes and Objects; Writing Classes; Conditionals and Loops; Object-Oriented Design; Arrays; Inheritance; Polymorphism; Exceptions; Recursion; Collections. For all readers interested in CS1 in Java.
About the Author
John Lewis is the co-author of several Java™ programming language textbooks: Java Software Solutions, Java Software Structures,Java Foundations, and Programming with Alice and Java. He received his BS, MS, and PhD degrees from Virginia Tech.
Table of Contents
Chapter 1. Introduction Computer Processing
Hardware Components
Networks
The Java Programming Language
Program Development
Object-Oriented Programming
Chapter 2. Data and Expressions
Character Strings
Variables and Assignments
Primitive Data Types
Expressions
Data Conversion
Interactive Programs
Graphics
Applets
Drawing Shapes
Chapter 3. Using Classes and Objects
Creating Objects
The String Class
The Random Class
The Math Class
Formatting Output
Enumerated Types
Wrapper Classes
Components and Containers
Nested Panels
Images
Chapter 4. Writing Classes
Classes and Objects Revisited
Anatomy of a Class
Encapsulation
Anatomy of a Method
Constructors Revisited
Graphical Objects
Graphical User Interfaces
Buttons
Text Fields
Chapter 5. Conditionals and Loops
Boolean Expressions
The if Statement
Comparing Data
The switch Statement
The while Statement
Iterators
The do Statement
The for Statement
Drawing with Loops and Conditionals
Determining Event Sources
Dialog Boxes
More Button Components
Chapter 6. Object-Oriented Design
Software Development Activities
Identifying Classes and Objects
Static Class Members
Class Relationships
Interfaces
Enumerated Types Revisited
Method Design
Method Overloading
Testing
GUI Design
Layout Managers
Borders
Containment Hierarchies
Chapter 7. Arrays
Array Elements
Declaring and Using Arrays
Arrays of Objects
Command-Line Arguments
Variable Length Parameter Lists
Two-Dimensional Arrays
The ArrayList Class
Polygons and Polylines
Mouse Events
Key Events
Chapter 8. Inheritance
Creating Subclasses
Overriding Methods
Class Hierarchies
Visibility
Designing for Inheritance
The Component Class Hierarchy
Extending Adaptor Classes
The Timer Class
Chapter 9. Polymorphism
Late Binding
Polymorphism via Inheritance
Polymorphism via Interfaces
Sorting
Searching
Designing for Polymorphism
Event Processing
File Choosers
Color Choosers
Sliders
Chapter 10. Exceptions
Exception Handling
Uncaught Exceptions
The try-catch Statement
Exception Propagation
The Exception Class Hierarchy
I/O Exceptions
Tool Tips and Mneumonics
Combo Boxes
Scroll Panes
Split Panes
Chapter 11. Recursion
Recursive Thinking
Recursive Programming
Using Recursion
Recursion in Graphics
Chapter 12. Collections
Collections and Data Structures
Dynamic Representations
Linear Data Structures
Non-Linear Data Structures
The Java Collections API
Appendices
Appendix A Glossary
Appendix B Number Systems
Appendix C The Unicode Character Set
Appendix D Java Operators
Appendix E Java Modifiers
Appendix F Java Coding Guidelines
Appendix G Java Applets
Appendix H Regular Expressions
Appendix I JavaDoc Documentation Generator
Appendix J The PaintBox Project
Appendix K GUI Events
Appendix L Java Syntax
Appendix M The Java Class Library
Index