๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Java Foundations Introduction to Program Design and Data Structures (5th Edition)

โœ Scribed by John Lewis, Peter DePasquale, Joseph Chase


Publisher
Pearson
Year
2019
Tongue
English
Leaves
1094
Edition
5
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Table of Contents


Cover
Preface
Contents
Chapter 1 Introduction
1.1 The Java Programming Language
A Java Program
Comments
Identifiers and Reserved Words
White Space
1.2 Program Development
Programming Language Levels
Editors, Compilers, and Interpreters
Development Environments
Syntax and Semantics
Errors
1.3 Problem Solving
1.4 Software Development Activities
1.5 Object-Oriented Programming
Object-Oriented Software Principles
Chapter 2 Data and Expressions
2.1 Character Strings
The print and println Methods
String Concatenation
Escape Sequences
2.2 Variables and Assignment
Variables
The Assignment Statement
Constants
2.3 Primitive Data Types
Integers and Floating Points
Characters
Booleans
2.4 Expressions
Arithmetic Operators
Operator Precedence
Increment and Decrement Operators
Assignment Operators
2.5 Data Conversion
Conversion Techniques
2.6 Reading Input Data
The Scanner Class
Chapter 3 Using Classes and Objects
3.1 Creating Objects
Aliases
3.2 The String Class
3.3 Packages
The import Declaration
3.4 The Random Class
3.5 The Math Class
3.6 Formatting Output
The NumberFormat Class
The DecimalFormat Class
The printf Method
3.7 Enumerated Types
3.8 Wrapper Classes
Autoboxing
Chapter 4 Conditionals and Loops
4.1 Boolean Expressions
Equality and Relational Operators
Logical Operators
4.2 The if Statement
The if-else Statement
Using Block Statements
The Conditional Operator
Nested if Statements
4.3 Comparing Data
Comparing Floats
Comparing Characters
Comparing Objects
4.4 The switch Statement
4.5 The while Statement
Infinite Loops
Nested Loops
Other Loop Controls
4.6 Iterators
Reading Text Files
4.7 The do Statement
4.8 The for Statement
Iterators and for Loops
Comparing Loops
Chapter 5 Writing Classes
5.1 Classes and Objects Revisited
Identifying Classes and Objects
Assigning Responsibilities
5.2 Anatomy of a Class
Instance Data
UML Class Diagrams
5.3 Encapsulation
Visibility Modifiers
Accessors and Mutators
5.4 Anatomy of a Method
The return Statement
Parameters
Local Data
Constructors Revisited
5.5 Static Class Members
Static Variables
Static Methods
5.6 Class Relationships
Dependency
Dependencies among Objects of the Same Class
Aggregation
The this Reference
5.7 Method Design
Method Decomposition
Method Parameters Revisited
5.8 Method Overloading
5.9 Testing
Reviews
Defect Testing
Unit Testing
Integration Testing
System Testing
Test-Driven Development
5.10 Debugging
Simple Debugging with print Statements
Debugging Concepts
Chapter 6 Graphical User Interfaces
6.1 Introduction to JavaFX
GUI Elements
Alternate Ways to Specify Event Handlers
Determining Event Sources
6.2 Other GUI Controls
Text Fields
Check Boxes
Radio Buttons
Color and Date Pickers
6.3 Mouse and Key Events
Mouse Events
Key Events
6.4 Dialog Boxes
File Choosers
6.5 JavaFX Properties
Change Listeners
Sliders
Spinners
6.6 Tool Tips and Disabling Controls
Chapter 7 Arrays
7.1 Array Elements
7.2 Declaring and Using Arrays
Bounds Checking
Alternative Array Syntax
Initializer Lists
Arrays as Parameters
7.3 Arrays of Objects
7.4 Command-Line Arguments
7.5 Variable-Length Parameter Lists
7.6 Two-Dimensional Arrays
Multidimensional Arrays
7.7 Arrays and GUIs
An Array of Color Objects
Choice Boxes
Chapter 8 Inheritance
8.1 Creating Subclasses
The protected Modifier
The super Reference
Multiple Inheritance
8.2 Overriding Methods
Shadowing Variables
8.3 Class Hierarchies
The Object Class
Abstract Classes
8.4 Visibility
8.5 Designing for Inheritance
Restricting Inheritance
8.6 Inheritance in JavaFX
Chapter 9 Polymorphism
9.1 Dynamic Binding
9.2 Polymorphism via Inheritance
9.3 Interfaces
Interface Hierarchies
The Comparable Interface
The Iterator Interface
9.4 Polymorphism via Interfaces
Chapter 10 Exceptions
10.1 Exception Handling
10.2 Uncaught Exceptions
10.3 The try-catch Statement
The finally Clause
10.4 Exception Propagation
10.5 The Exception Class Hierarchy
Checked and Unchecked Exceptions
10.6 I/O Exceptions
Chapter 11 Analysis of Algorithms
11.1 Algorithm Efficiency
11.2 Growth Functions and Big-Oh Notation
11.3 Comparing Growth Functions
11.4 Determining Time Complexity
Analyzing Loop Execution
Nested Loops
Method Calls
Chapter 12 Introduction to Collections - Stacks
12.1 Collections
Abstract Data Types
The Java Collections API
12.2 A Stack Collection
12.3 Crucial OO Concepts
Inheritance and Polymorphism
Generics
12.4 Using Stacks: Evaluating Postfix Expressions
Javadoc
12.5 Exceptions
12.6 A Stack ADT
12.7 Implementing a Stack: With Arrays
Managing Capacity
12.8 The ArrayStack Class
The Constructors
The push Operation
The pop Operation
The peek Operation
Other Operations
The EmptyCollectionException Class
Other Implementations
Chapter 13 Linked Structures - Stacks
13.1 References as Links
13.2 Managing Linked Lists
Accessing Elements
Inserting Nodes
Deleting Nodes
13.3 Elements without Links
Doubly Linked Lists
13.4 Stacks in the Java API
13.5 Using Stacks: Traversing a Maze
13.6 Implementing a Stack: With Links
The LinkedStack Class
The push Operation
The pop Operation
Other Operations
Chapter 14 Queues
14.1 A Conceptual Queue
14.2 Queues in the Java API
14.3 Using Queues: Code Keys
14.4 Using Queues: Ticket Counter Simulation
14.5 A Queue ADT
14.6 A Linked Implementation of a Queue
The enqueue Operation
The dequeue Operation
Other Operations
14.7 Implementing Queues: With Arrays
The enqueue Operation
The dequeue Operation
Other Operations
14.8 Double-Ended Queues (Dequeue)
Chapter 15 Lists
15.1 A List Collection
15.2 Lists in the Java Collections API
15.3 Using Unordered Lists: Program of Study
15.4 Using Indexed Lists: Josephus
15.5 A List ADT
Adding Elements to a List
15.6 Implementing Lists with Arrays
The remove Operation
The contains Operation
The add Operation for an Ordered List
Operations Particular to Unordered Lists
The addAfter Operation for an Unordered List
15.7 Implementing Lists with Links
The remove Operation
15.8 Lists in JavaFX
Observable List
Sorted List
Chapter 16 Iterators
16.1 What???s an Iterator?
Other Iterator Issues
16.2 Using Iterators: Program of Study Revisited
Printing Certain Courses
Removing Courses
16.3 Implementing Iterators: With Arrays
16.4 Implementing Iterators: With Links
Chapter 17 Recursion
17.1 Recursive Thinking
Infinite Recursion
Recursion in Math
17.2 Recursive Programming
Recursion versus Iteration
Direct versus Indirect Recursion
17.3 Using Recursion
Traversing a Maze
The Towers of Hanoi
17.4 Analyzing Recursive Algorithms
Chapter 18 Searching and Sorting
18.1 Searching
Static Methods
Generic Methods
Linear Search
Binary Search
Comparing Search Algorithms
18.2 Sorting
Selection Sort
Insertion Sort
Bubble Sort
Quick Sort
Merge Sort
18.3 Radix Sort
18.4 A Different Way to Sort???Comparator
Chapter 19 Trees
19.1 Trees
Tree Classifications
19.2 Strategies for Implementing Trees
Computational Strategy for Array Implementation of Trees
Simulated Link Strategy for Array Implementation of Trees
Analysis of Trees
19.3 Tree Traversals
Preorder Traversal
Inorder Traversal
Postorder Traversal
Level-Order Traversal
19.4 A Binary Tree ADT
19.5 Using Binary Trees: Expression Trees
19.6 A Back Pain Analyzer
19.7 Implementing Binary Trees with Links
The find Method
The iteratorInOrder Method
Chapter 20 Binary Search Trees
20.1 Binary Search Trees
Adding an Element to a Binary Search Tree
Removing an Element from a Binary Search Tree
20.2 Implementing a Binary Search Tree
20.3 Implementing Binary Search Trees: With Links
The addElement Operation
The removeElement Operation
The removeAllOccurrences Operation
The removeMin Operation
Implementing Binary Search Trees: With Arrays
20.4 Using Binary Search Trees: Implementing Ordered Lists
Analysis of the BinarySearchTreeList Implementation
20.5 Balanced Binary Search Trees
Right Rotation
Left Rotation
Rightleft Rotation
Leftright Rotation
20.6 Implementing Binary Search Trees: AVL Trees
Right Rotation in an AVL Tree
Left Rotation in an AVL Tree
Rightleft Rotation in an AVL Tree
Leftright Rotation in an AVL Tree
20.7 Implementing Binary Search Trees: Red/Black Trees
Insertion into a Red/Black Tree
Element Removal from a Red/Black Tree
Chapter 21 Heaps and Priority Queues
21.1 A Heap
The addElement Operation
The removeMin Operation
The findMin Operation
21.2 Using Heaps: Priority Queues
21.3 Implementing Heaps: With Links
The addElement Operation
The removeMin Operation
The findMin Operation
21.4 Implementing Heaps: With Arrays
The addElement Operation
The removeMin Operation
The findMin Operation
21.5 Using Heaps: Heap Sort
Chapter 22 Sets and Maps
22.1 Set and Map Collections
22.2 Sets and Maps in the Java API
22.3 Using Sets: Domain Blocker
22.4 Using Maps: Product Sales
22.5 Using Maps: User Management
22.6 Implementing Sets and Maps Using Trees
22.7 Implementing Sets and Maps Using Hashing
Chapter 23 Multi-way Search Trees
23.1 Combining Tree Concepts
23.2 2-3 Trees
Inserting Elements into a 2-3 Tree
Removing Elements from a 2-3 Tree
23.3 2-4 Trees
23.4 B-Trees
B*-Trees
B + -Trees
Analysis of B-Trees
23.5 Implementation Strategies for B-Trees
Chapter 24 Graphs
24.1 Undirected Graphs
24.2 Directed Graphs
24.3 Networks
24.4 Common Graph Algorithms
Traversals
Testing for Connectivity
Minimum Spanning Trees
Determining the Shortest Path
24.5 Strategies for Implementing Graphs
Adjacency Lists
Adjacency Matrices
24.6 Implementing Undirected Graphs with an Adjacency Matrix
The addEdge Method
The addVertex Method
The expandCapacity Method
Other Methods
Chapter 25 Databases
25.1 Introduction to Databases
25.2 Establishing a Connection to a Database
Obtaining a Database Driver
25.3 Creating and Altering Database Tables
Create Table
Alter Table
Drop Column
25.4 Querying the Database
Show Columns
25.5 Inserting, Viewing, and Updating Data
Insert
SELECT ... FROM
Update
25.6 Deleting Data and Database Tables
Deleting Data
Deleting Database Tables
Appendix A Glossary
Appendix B Number Systems
Place Value
Bases Higher Than 10
Conversions
Shortcut Conversions
Appendix C The Unicode Character Set
Appendix D Java Operators
Java Bitwise Operators
Appendix E Java Modifiers
Java Visibility Modifiers
A Visibility Example
Other Java Modifiers
Appendix F JavaFX Graphics
Coordinate Systems
Representing Colors
Basic Shapes
Arcs
Images
Fonts
Graphic Transformations
Translation
Scaling
Rotation
Shearing
Polygons and Polylines
Appendix G JavaFX Scene Builder
Hello Moon
Handling Events in JavaFX Scene Builder
Appendix H Regular Expressions
Appendix I Hashing
I.1 A Hashing
I.2 Hashing Functions
The Division Method
The Folding Method
The Mid-Square Method
The Radix Transformation Method
The Digit Analysis Method
The Length-Dependent Method
Hashing Functions in the Java Language
I.3 Resolving Collisions
Chaining
Open Addressing
I.4 Deleting Elements from a Hash Table
Deleting from a Chained Implementation
Deleting from an Open Addressing Implementation
I.5 Hash Tables in the Java Collections API
The Hashtable Class
The HashSet Class
The HashMap Class
The IdentityHashMap Class
I.6 The WeakHashMap Class
LinkedHashSet and LinkedHashMap
Appendix J Java Syntax
Index: A-L
Index: M-Z


๐Ÿ“œ SIMILAR VOLUMES


Java Foundations: Introduction to Progra
โœ John Lewis, Peter DePasquale, Joseph Chase ๐Ÿ“‚ Library ๐Ÿ“… 2010 ๐Ÿ› Addison Wesley ๐ŸŒ English

Inspired by the success of their best-selling introductory programming text, Java Software Solutions, authors Lewis, DePasquale, and Chase now release Java Foundations, Second Edition. This text is a comprehensive resource for instructors who want a two-or three-semester introduction to programming

Java Foundations: Introduction to Progra
โœ John Lewis, Peter DePasquale, Joseph Chase ๐Ÿ“‚ Library ๐Ÿ“… 2010 ๐Ÿ› Addison-Wesley ๐ŸŒ English

Inspired by the success of their best-selling introductory programming text, Java Software Solutions, authors Lewis, DePasquale, and Chase now release Java Foundations, Second Edition. This text is a comprehensive resource for instructors who want a two-or three-semester introduction to programming

Introduction to Java Programming and Dat
โœ Y. Daniel Liang ๐Ÿ“‚ Library ๐ŸŒ English

For courses in Java Programming. A fundamentals-first introduction to basic programming concepts andtechniques Introduction to Java Programming and Data Structures seamlessly integrates programming, data structures,and algorithms into one text. With a fundamentals-first approach, the textbuilds a st

C++ Programming: Program Design Includin
โœ D. S. Malik ๐Ÿ“‚ Library ๐Ÿ“… 2010 ๐Ÿ› Course Technology ๐ŸŒ English

C++ PROGRAMMING: PROGRAM DESIGN INCLUDING DATA STRUCTURES remains the definitive text for the CS1/CS1 course sequence. In this new fifth edition, D.S. Malik continues to employ his student-focused, example-based methodology to teach C++ Programming to introductory computing students. Changes to this