Introduction to Programming with Java¶
Introduction to Programming with Java is an interactive textbook designed to introduce fundamental concepts in software application development using the Java programming language. The curriculum is suitable for an introductory college-level course.
Introduction to Programming with Java is authored by Linda Seiter and Dan Palmer of John Carroll University. This ebook is an adaptation of CSAwesome written by Beryl Hoffman of Elms College, available at https://runestone.academy/runestone/books/published/csawesome/index.html. CSAwesome is based on the Java Review ebook written by Barbara Ericson of University of Michigan, https://runestone.academy/runestone/books/published/apcsareview/index.html.
Table of Contents¶
- Module 0 - Introduction
- Module 1 - Types and Names
- Preface
- Why Programming? Why Java?
- Variables and Data Types
- Expressions and Assignment Statements
- Compound Assignment Operators
- Casting and Ranges of Variables
- Boolean Expressions
- Using the Math Class
- Module 1 Mixed Up Code Practice
- Module 1 Coding Practice
- Multiple Choice Exercises
- Studio 1: The Type is Right
- Assignment 1: Grade Calculator
- Module 2 - Choice and Iteration
- If Statements and Control Flow
- Two-way Selection: if-else Statements
- Multi-Selection: else-if Statements
- Compound Boolean Expressions
- While Loops
- For Loops
- Loops and Strings
- Nested For Loops
- Loop Analysis
- Coding Practice
- Multiple Choice Exercises
- Studio 2: Gambler’s Ruin and Pi
- Assignment 2: Game of Nim
- Module 3 - Arrays
- Module 4: Input / Output
- Module 5: Writing Methods
- Module 6: Recursion
- Module 7: Writing Classes
- Module 8: Inheritance
- Inheritance
- Subclass extends Superclass
- Why Use Inheritance?
- is-a vs. has-a
- is-a Substitution Test
- Summary
- Inheritance and Constructors
- Overriding Methods
- super Keyword
- Inheritance Hierarchies
- Polymorphism
- Inheritance Summary
- Mixed Up Code Practice
- Code Practice with Object Oriented Concepts
- Module 8 Studio
- Assignment 8: Zombies: The Final OBJECTive
- Module 9: Abstract Data Types
Index¶
© Copyright 2015 Barb Ericson, Univ. Michigan, 2019 revised by Beryl Hoffman (Elms College, Mobile CSP Project), 2020 revised by Linda Seiter and Dan Palmer (John Carroll University). Created using Runestone.