Book description
With a variety of interactive learning features and user-friendly pedagogy, the Third Edition provides a comprehensive introduction to programming using the most current version of Java. Throughout the text the authors incorporate an “active learning approach” which asks students to take an active role in their understanding of the language through the use of numerous interactive examples, exercises, and projects. Object-oriented programming concepts are developed progressively and reinforced through numerous Programming Activities, allowing students to fully understand and implement both basic and sophisticated techniques. In response to students growing interest in animation and visualization the text includes techniques for producing graphical output and animations beginning in Chapter 4 with applets and continuing throughout the text. You will find Java Illuminated, Third Edition comprehensive and user-friendly. Students will find it exciting to delve into the world of programming with hands-on, real-world applications!
Table of contents
- Cover Page
- Title Page
- Copyright Page
- Dedictation Page
- Contents
- Preface
- Turing's Craft CodeLab Student Registration Instructions
- Acknowledgments
- Chapter 1 - Introduction to Programming and the Java Language
- Chapter 2 - Programming Building Blocks—Java Basics
-
Chapter 3 - Object-Oriented Programming, Part 1: Using Classes
- 3.1 Class Basics and Benefits
- 3.2 Creating Objects Using Constructors
- 3.3 Calling Methods
- 3.4 Using Object References
- 3.5 Programming Activity 1: Calling Methods
- 3.6 The Java Class Library
- 3.7 The String Class
- 3.8 Formatting Output with the DecimalFormat Class
- 3.9 Generating Random Numbers with the Random Class
- 3.10 Input from the Console Using the Scanner Class
- 3.11 Calling Static Methods and Using Static Class Variables
- 3.12 Using System.in and System.out
- 3.13 The Math Class
- 3.14 Formatting Output with the NumberFormat Class
- 3.15 The Integer, Double, and Other Wrapper Classes
- 3.16 Input and Output Using JOptionPane Dialog Boxes
- 3.17 Programming Activity 2: Using Predefined Classes
- 3.18 Chapter Summary
- 3.19 Exercises, Problems, and Projects
- Chapter 4 - Introduction to Applets and Graphics
-
Chapter 5 - Flow of Control, Part 1: Selection
- 5.1 Forming Conditions
- 5.2 Simple Selection with if
- 5.3 Selection Using if/else
- 5.4 Selection Using if/else if
- 5.5 Sequential and Nested if/else Statements
- 5.6 Testing Techniques for if/else Statements
- 5.7 Programming Activity 1:Working with if/else
- 5.8 Comparing Floating-Point Numbers
- 5.9 Comparing Objects
- 5.10 The Conditional Operator (?:)
- 5.11 The Switch Statement
- 5.12 Programming Activity 2: Using the Switch Statement
- 5.13 Chapter Summary
- 5.14 Exercises, Problems, and Projects
-
Chapter 6 - Flow of Control, Part 2: Looping
- 6.1 Event-Controlled Loops Using While
- 6.2 General Form for While Loops
- 6.3 Event-Controlled Looping
- 6.4 Looping Techniques
- 6.5 Type-Safe Input Using Scanner
- 6.6 Constructing Loop Conditions
- 6.7 Testing Techniques for While Loops
- 6.8 Event-Controlled Loops Using Do/while
- 6.9 Programming Activity 1: Using While Loops
- 6.10 Count-Controlled Loops Using for
- 6.11 Nested Loops
- 6.12 Programming Activity 2: Using for Loops
- 6.13 Chapter Summary
- 6.14 Exercises, Problems, and Projects
-
Chapter 7 - Object-Oriented Programming, Part 2: User-Defined Classes
- 7.1 Defining a Class
- 7.2 Defining Instance Variables
- 7.3 Writing Class Methods
- 7.4 Writing Constructors
- 7.5 Writing Accessor Methods
- 7.6 Writing Mutator Methods
- 7.7 Writing Data Manipulation Methods
- 7.8 Programming Activity 1:Writing a Class Definition, Part 1
- 7.9 The Object Reference this
- 7.10 The Tostring and Equals Methods
- 7.11 Static Class Members
- 7.12 Graphical Objects
- 7.13 Enumeration Types
- 7.14 Programming Activity 2:Writing a Class Definition, Part 2
- 7.15 Creating Packages
- 7.16 Generating Web-Style Documentation with Javadoc
- 7.17 Chapter Summary
- 7.18 Exercises, Problems, and Projects
-
Chapter 8 - Single-Dimensional Arrays
- 8.1 Declaring and Instantiating Arrays
- 8.2 Accessing Array Elements
- 8.3 Aggregate Array Operations
- 8.4 Programming Activity 1:Working with Arrays
- 8.5 Using Arrays in Classes
- 8.6 Searching and Sorting Arrays
- 8.7 Programming Activity 2: Searching and Sorting Arrays
- 8.8 Using Arrays as Counters
- 8.9 Chapter Summary
- 8.10 Exercises, Problems, and Projects
-
Chapter 9 - Multidimensional Arrays and the ArrayList Class
- 9.1 Declaring and Instantiating Multidimensional Arrays
- 9.2 Accessing Multidimensional Array Elements
-
9.3 Aggregate Two-Dimensional Array Operations
- 9.3.1 Processing All the Elements of a Two- Dimensional Array
- 9.3.2 Processing a Given Row of a Two- Dimensional Array
- 9.3.3 Processing a Given Column of a Two- Dimensional Array
- 9.3.4 Processing a Two-Dimensional Array One Row at a Time
- 9.3.5 Processing a Two-Dimensional Array One Column at a Time
- 9.3.6 Displaying Two-Dimensional Array Data as a Bar Chart
- 9.4 Two-Dimensional Arrays Passed to and Returned from Methods
- 9.5 Programming Activity 1:Working with Two- Dimensional Arrays
- 9.6 Other Multidimensional Arrays
- 9.7 The ArrayList Class
- 9.8 Programming Activity 2:Working with the ArrayList Class
- 9.9 Chapter Summary
- 9.10 Exercises, Problems, and Projects
- Chapter 10 - Object-Oriented Programming, Part 3: Inheritance, Polymorphism, and Interfaces
-
Chapter 11 - Exceptions and Input/Output Operations
- 11.1 Simple Exception Handling
- 11.2 The Java.io Package
- 11.3 Reading Text Files Using Scanner
- 11.4 Writing and Appending to Text Files
- 11.5 Reading Structured Text Files
- 11.6 Programming Activity 1: Reading from a Structured Text File
- 11.7 Reading and Writing Objects to a File
- 11.8 Programming Activity 2: Reading Objects from a File Task Instructions: Reading from the transactions.objFile
- 11.9 Chapter Summary
- 11.10 Exercises, Problems, and Projects
-
Chapter 12 - Graphical User Interfaces
- 12.1 GUI Applications Using JFrame
- 12.2 GUI Components
- 12.3 A Simple Component: JLabel
- 12.4 Event Handling
- 12.5 Text Fields
- 12.6 Command Buttons
- 12.7 Radio Buttons and Checkboxes
- 12.8 Programming Activity 1:Working with Buttons
- 12.9 Lists
- 12.10 Combo Boxes
- 12.11 Adapter Classes
- 12.12 Mouse Movements
- 12.13 Layout Managers: GridLayout
- 12.14 Layout Managers: BorderLayout
- 12.15 Using Panels to Nest Components
- 12.16 Programming Activity 2:Working with Layout Managers
- 12.17 Chapter Summary
- 12.18 Exercises, Problems, and Projects
-
Chapter 13 - Recursion
- 13.1 Simple Recursion: Identifying the General and Base Cases
- 13.2 Recursion with a Return Value
- 13.3 Recursion with Two Base Cases
- 13.4 Programming Activity 1: Checking for a Palindrome
- 13.5 Binary Search Revisited: A Recursive Solution
- 13.6 Programming Activity 2: The Towers of Hanoi
- 13.7 Animation Using Recursion
- 13.8 Recursion Versus Iteration
- 13.9 Chapter Summary
- 13.10 Exercises, Problems, and Projects
-
Chapter 14 - An Introduction to Data Structures
- 14.1 Linked Lists
- 14.2 Linked Lists of Objects
- 14.3 Implementing a Stack Using a Linked List
- 14.4 Implementing a Queue Using a Linked List
- 14.5 Array Representation of Stacks
- 14.6 Programming Activity 1:Writing Methods for a Stack Class
- 14.7 Array Representation of Queues
- 14.8 Sorted Linked Lists
- 14.9 Programming Activity 2:Writing Insert and Delete Methods for a Sorted Linked List
- 14.10 Doubly Linked Lists
- 14.11 Linked Lists Using Generic Types
- 14.12 Recursively Defined Linked Lists
- 14.13 Chapter Summary
- 14.14 Exercises, Problems, and Projects
-
Chapter 15 - Running Time Analysis
- 15.1 Orders of Magnitude and Big-Oh Notation
- 15.2 Running Time Analysis of Algorithms: Counting Statements
- 15.3 Running Time Analysis of Algorithms and Impact of Coding: Evaluating Recursive Methods
- 15.4 Programming Activity: Tracking How Many Statements Are Executed by a Method
- 15.5 Running Time Analysis of Searching and Sorting Algorithms
- 15.6 Chapter Summary
- 15.7 Exercises, Problems, and Projects
- Appendix A - Java Reserved Words and Keywords
- Appendix B - Operator Precedence
- Appendix C - The Unicode Character Set
- Appendix D - Representing Negative Integers
- Appendix E - Representing Floating-Point Numbers
-
Appendix F - Java Classes APIs
- ActionEvent
- ActionListener Interface
- ArrayList
- BigDecimal
- BorderLayout
- ButtonGroup
- Color
- Container
- DecimalFormat
- Double
- Enum
- Exception
- File
- FileOutputStream
- FlowLayout
- Graphics
- GridLayout
- Integer
- ItemEvent
- ItemListener Interface
- JButton
- JCheckBox
- JComboBox
- JComponent
- JFrame
- JLabel
- JList
- JOptionPane
- JPasswordField
- JRadioButton
- JTextArea
- JTextField
- ListSelectionListener Interface
- Math
- MouseEvent
- MouseListener Interface
- MouseMotionListener Interface
- NumberFormat
- ObjectInputStream
- ObjectOutputStream
- Polygon
- PrintWriter
- Random
- Scanner
- String
- System
- Appendix G - Solutions to Selected Exercises
- Index
Product information
- Title: Java Illuminated, 3rd Edition
- Author(s):
- Release date: January 2011
- Publisher(s): Jones & Bartlett Learning
- ISBN: 9781449604394
You might also like
book
Debugging
The rules of battle for tracking down -- and eliminating -- hardware and software bugs. When …
book
Clean Code: A Handbook of Agile Software Craftsmanship
Even bad code can function. But if code isn’t clean, it can bring a development organization …
book
Java Coding Problems
Develop your coding skills by exploring Java concepts and techniques such as Strings, Objects and Types, …
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …