Text
Introduction to programming with java: a problem solving approach
Contents
Chapter 1. Introdution to Computers and Programming
1.1. Introduction
1.2. Hardware Terminology
1.3. Program Development
1.4. Source Code
1.5. Compiling Source Code into Object Code
1.6. Portability
1.7. Emergence of Java
1.8. Computer Ethics
1.9. First Program-Hello World
1.10. GUI Track: Hello World and Look and Feel (Optional)
Chapter 2. Algortihms and Design
2.1. Introduction
2.2. Output
2.3. Variables
2.4. Operators and Assignment Statements
2.5. Input
2.6. Flow of Control and Flowchart
2.7. if Statements
2.8. Loops
2.9. Loop Termination Techniques
2.10. Nested Looping
2.11. Tracing
2.12. Problem Solving: Other Pseudocode Formats and an Asset Management Example
Chapter 3. Java Basics
3.1. Introduction
3.2. "I Have a deram Program"
3.3. Comments and Readability
3.4. The Class Heading
3.5. The main Method's Heading
3.6. Braces
3.7. system.out.println
3.8. Compilation and Execution
3.9. Identifiers
3.10. Variables
3.11. Assignment Statements
3.12. Inisialization Statements
3.13. Numeric Data Type- int, long, float, double
3.14. Constants
3.15. Aritmethic Operators
3.16. Expression Evaluation and Operator Precedence
3.17. More Operators: Increment, Decrement, and Compound Assignment
3.18. Tracing
3.19. Trace Casting
3.20. char Type and Escape Sequences
3.21. Primitive Variables vs References Variables
3.22. Strings
3.23. Input-The Scanner Class
3.24. Simple File Input for Repetitive Testing During Program Development
3.25. GUI Track: I/O with JOptionPane (Optional)
Chapter 4. Control Statements
4.1. Introduction
4.2. Conditions and Boolean Values
4.3 if Statements
4.4 && Logical Operator
4.5. || Logical Operator
4.6. ! Logical Operator
4.7. switch Statement
4.8. while Loop
4.9. do Loop
4.10. for Loop
4.11. Solving the Problem Which Loop to Use
4.12. Nested Loop
4.13. boolean Variables
4.14. Input Validation
4.15. Problem Solving with Boolean Logic (Optional)
Chapter 5. Using Prebuilt Methods
5.1. Introduction
5.2. The API Library
5.3. Math Clas
5.4. Wrapper Class for Primitive Types
5.5. Character Class
5.6. String Methods
5.7. Formatted Output with the printf Method
5.8. Problem Solving with Random Numbers (optional)
5.9. GUI Track: Drawing Images, Lines, Rectangles, and Ovals in Java Applets
5.10. GUI Track: Decorating an Image by Covering it with a Tinted Pane
Chapter 6. Object-Oriented Programming
6.1. Introduction
6.2. Object-Oriented Programming Overview
6.3. First OOP Class
6.4. Driver Class
6.5. Calling Object, this Reference
6.6. Instance Variables
6.7. Tracing an OOP Program
6.8. UML Class Diagrams
6.9. Local Variables
6.10. The return Statement
6.11. Argument Passing
6.12. Problem Solving with Simulation
Chapter 7. Object-Oriented Programming-Additional Details
7.1. Introduction
7.2. Object Creation-A Detailed Analysis
7.3. Assigning a Reference
7.4. Testing Object for Equality
7.5. Passing Reference as Arguments
7.6. Method-Call Chaining
7.7. Overloaded Methods
7.8. Constructors
7.9. Overloaded Constructors
7.10. Class Variables
7.11. Class Methods
7.12. Named Constants
7.13. Problem Solving with Multiple Driven Classes
Chapter 8. Software Engineering
8.1. Introduction
8.2. Coding-Style Conventions
8.3. Documentation for Outsiders
8.4. Helper Methods
8.5. Encapsulation (with Instance Variables and Local Variables)
8.6. Recognizing the User's Point of View
8.7. Design Philosophy
8.8. Top-Down Design
8.9. Bottom-Up Design
8.10. Case-Based Design
8.11. Interative Enhancement
8.12. Merging the Driver Method into the Driven Class
8.13. Accessing Instance Variables without Using this
8.14. Writing Your Own Utility Class
8.15. Problem Solving with CRC Cards
Chapter 9. Arrays
9.1. Introduction
9.2. Arrays Basics
9.3. Array Declaration and Creation
9.4. Array lenght Property and Partially Filled Arrays
9.5. Copying an Array
9.6. Problem Solving with Array Case Studies
9.7. Searching an Array
9.8. Sorting an Array
9.9. Two-Dimensional Arrays
9.10. Arrays of Objects
9.11. For-Each Loops
Chapter 10. ArrayLists and an Introduction to the Java Collections Framework
10.1. Introduction
10.2. The ArrayList Class
10.3. Storing Primitives in ArrayList
10.4. ArrayList Example Using Anonymous Objects and the For-Each Loop
10.5. ArrayList vs Standard Arrays
10.6. The LinkedList Class
10.7. The List Interface
10.8. Problem Solving: How to Compare Method Execution Times
10.9. Queues, Stacks, and the ArrayDeque Class
10.10. Overview of the Java Collections Framework
10.11. Collection Example-Information Flow in a Network of Friends
Chapter 11. Recursion
11.1. Introduction
11.2. Guideline for Writing a Recursive Method
11.3. A Recursive Factorial Method
11.4. Comparison of Recursive and Iterative Solutions
11.5. Recursive Method Evaluation Practice
11.6. Binary Seacrh
11.7. Merge Sort
11.8. Towers of Hanoi
11.9. GUI Track: Drawing Trees with a Fractal Algorithm
11.10. Performance Analysis
Chapter 12. Types Details and Alternative Coding Mechanisms
12.1. Introduction
12.2. Integer Types and Floating-Point Types
12.3. char Type and the ASCII Character Set
12.4. Type Conversions
12.5. Prefix/Postfix Modes for Increment/Decrement Operators
12.6. Embedded Assignments
12.7. Conditional Operator Expressions
12.8. Expression Evaluation Review
12.9. Short-Circuit Evaluation
12.10. Empty Statement
12.11. break Statement within a Loop
12.12. for Loop Header Details
12.13. Enumerated Types
12.14. Hexadecimal, Octal, and Binary Numbers
12.15. GUI Track: Unicode
12.16. Introduction to GridWorld Case Study
Chapter 13. Aggregation, Composition, and Inheritance
13.1. Introduction
13.2. Composition and Aggregation
13.3. Inheritance Overview
13.4. Implementation of a person/employee/fullTime Hierarchy
13.5. Constructors in a Subclass
13.6. Method Overriding
13.7. Using of a person/employee/fullTime Hierarchy
13.8. The final Access Modifier
13.9. Using Inheritance with Aggregation and Composition
13.10. Design Practice with Card Game Example
13.11. GridWorld Case Study Extensions
13.12. Problem Solving with Association Classes
Chapter 14. Inheritance and Polymorphism
14.1. Introduction
14.2. The object class and Automatic Type Promotion
14.3. The equals Method
14.4. The toString Method
14.5. Polymorphism and Dynamic Binding
14.6. Assignment Between Classes in a Class Hierarchy
14.7. Polymorphism with Arrays
14.8. abstract Methods and Classes
14.9. Interfaces
14.10. The protected Access Modifier
14.11. GUI Track: Three-Dimensional Graphics
Chapter 15. Exception Handling
15.1. Introduction
15.2. Overview of Exceptions and Exception Messages
15.3. Using try and catch Blocks to Handle "Dangerous" Method Calls
15.4. Line Plot Example
15.5. try Block Details
15.6. Two Categories of Exceptions- Checked and Unchecked
15.7. Unchecked Exceptions
15.8. Checked Exceptions
15.9. Generic catch Block with Exception Class
15.10. Multiple catch Blocks and Multiple Exceptions per Block
15.11. Understanding Exception Message
15.12. Using throws to Postpone to Catch
15.13. Automatic CleanUp Using Try-With-Resources
15.14. GUI Track and Problem Solving: Line Plot Example Revisited
Chapter 16. Files, Buffers, Channels, and Paths
16.1. Introduction
16.2. Simple Text-File Example: HTML File Generator
16.3. A Website Reader
16.4. Object File I/O
16.5. Character Sets and File-Access Options
16.6. Buffered Text-File I/O
16.7. Primitive Buffers with Random Access
16.8. Channel I/O and Memory-Mapped Files
16.9. Path, Whole-File, and Directory Operations
16.10. Walking a Directory Tree
16.11. GUI Track: The JFileChooser Class
Chapter 17. GUI Programming Basics
17.1. Introduction
17.2. Event-Driven Programming Basics
17.3. A Simple Window Program
17.4. JFrame Class
17.5. Java Component
17.6. JLabel Component
17.7. JTextField Component
17.8. Greeting Program
17.9. Component Listeners
17.10. Inner Classes
17.11. Anonymous Inner Classes
17.12. JButton Component
17.13. Dialog Boxes and the JOptionPane Class
17.14. Distinguishing Between Multiple Events
17.15. Using getActionCommand to Distinguish Between Multiple Events
17.16. Color
17.17. How GUI Classes are Grouped Together
17.18. Mouse Listeners and Images
Chapter 18. GUI Programming-Component Layout, Additional GUI Components
18.1. Introduction
18.2. GUI Design and Layout Manegers
18.3. FlowLayout Manager
18.4. BoxLayout Manager
18.5. BorderLayout Manager
18.6. GridLayout Manager
18.7. Tic-Tac-Toe Example
18.8. Problem Solving: Winning at Tic-Tac-Toe
18.9. Embedded Layout Managers
18.10. JPanel Class
18.11. MathCalculator Program
18.12. JTextArea Component
18.13. JCheckBox Component
18.14. JRadioButton Component
18.15. JComboBox Component
18.16. Job Application Example
18.17. More Swing Component
No other version available