Topics

Topic Materials

All materials courtesy of Stuart Reges & Marty Stepp, UW Computer Science & Engineering, the authors of our text: Building Java Programs.

Chapter Topic Slides Videos Examples
01 Intro to Java Programming Chapter 1 1-3: Static Methods
1-4: Complex Figures
BakeCookies
BakeCookies2
02 Primitive Data and Definite Loops Chapter 2 2-1: Expressions
2-2: Variables/Assignments
2-3: For Loop
2-4: Nested Loops
2-5: Complex Figure
Mirror.java
Mirror2.java
ScopeExample.java
03 Intro to Parameters and Objects Chapter 3 3-1: Parameter Mystery
3-2: Parameters & Return Values
3-3: Strings
3-4: Scanner
StarLines.java
StarLines2.java
ParameterExample.java
ParameterExample2.java
Params.java
Params2.java
StringDemo.java
ScannerAvg.java
03G Graphics Chapter 3G 3G-1: Basic Drawing
3G-2: Parameterized Drawing
DrawingPanel.java
Copy this file to your program folder

TrainCar.java

04 Conditional Execution Chapter 4 4-2: Nested if/else Statements
4-3: Factoring if/else
4-4: Programming with if/else and Cumulative Sums
BMI1.java
BMI2.java
BMI3.java
FileReader.java
data.txt
05 Program Logic and Indefinite Loops Chapter 5 5-1: Random Numbers
5-2: Fencepost Loops
5-3: Sentinel Loops
5-4: Boolean Zen
5-5: Assertions
OddTester.java
AvgCalc.java
NumberGuess.java
Doubles.java
PickRandom.java
Robust.java
Fencepost1.java
06 File Processing Chapter 6 6-1: Token-based Processing
6-2: Line-based Processing
6-3: Processing Complex Input Files
07 Arrays Chapter 7 7-1: Array Simulation
7-2: Array Traversal Algorithms
7-3-1: Array Shifting Algorithms
7-3-2: Tallying with an Array
ArrayDemo.java
ScoreCounts.java
08 Classes Chapter 8 8-1: Defining a Class
8-2: Constructors
8-3: Advanced Instance Methods
8-4: Encapsulation
Point.java
UsePoint.java
UsePoint2.java
Baby.java
Procreate.java
Baby2.java
Zombies.java
09 Inheritance and Interfaces Chapter 9 9-1: Interacting with the Superclass
9-2: Polymorphism
9-3: Interfaces
Employee.java
Lawyer.java
Marketer.java
Secretary.java
LegalSecretary.java
Employee.java
EmployeeMain2.java
EmployeeMain3.java
EmployeeMain4.java
10 ArrayLists Chapter 10 10-1: Removing From an ArrayList
10-2: Adding To an ArrayList
10-3: Implementing Comparable
ReverseFile.java
inferno.txt
Creature.java
CreatureMaker.java
11 Java Collections Framework Chapter 11 11-1: List Example
11-2: Set Example
11-3: Map Example
12 Recursion Chapter 12 12-1: Recursive Tracing
12-2: Implementing a Recursive Function
12-3: Implementing a Recursive Method
Factorial.java
FactorialTrace.java
13 Searching and Sorting Chapter 13 13-1: Binary Search
13-2: Sorting
13-3: Complexity
14 Graphical User Interfaces Chapter 14 14-1: GUI Basics
14-2: Layout Management
14-3: More Components and Events
15 Implementing a Collection Class Chapter 15 15-1: ArrayIntList: Middle of the List
15-2: ArrayIntList: Pre/Post
15-3: ArrayIntList: Exception
16 Linked Lists Chapter 16 16-1: Linked List: Working with Nodes
16-2: LinkedIntList: Traversal
16-3: LinkedIntList: Complex Operation
17 Binary Trees Chapter 17 17-1: Binary Tree: Traversal
17-2: Binary Tree: Traversal
17-3: Binary Tree: x = change(x)
(AP) GridWorld GridWorld Case Study Student Manual
Quick Reference
Code (.zip)
Installation Guide
jGRASP Installation