Below is the current calendar for the CSE142 class. Please keep in mind that we are constantly updating this. It should accurately describe the past, but it won't always accurately predict the future. Although Riley doesn't often use lecture slides, there are links to slides that have been created by our textbook's coauthor, Marty Stepp. These might prove useful for students who either miss lecture or want an extra opportunity to review the material.

Monday Wednesday Friday
3/30
administrative details
simple programs with println

Read: 1.1-1.3
Lecture: panopto video, youtube video
Slides: pdf, ppt
Program: Hello.java
4/1
static methods


Read: 1.4-1.5
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: methods
Video: complex figure
Program: Figure1.java
Program: Figure2.java
Program: Figure3.java
4/3
primitive types, expressions,
variables, assignment

Read: 2.1-2.2
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: expressions
Video: variables/assignment
Program: OverallScore.java
4/6
print vs println
for loops

Read: 2.3
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: for loop
Video: nested loops
Program: ForLoopExamples.java
4/8
nested for loops
class constants

Read: 2.4-2.5
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: complex figure
Program: Mirror.java
Program: Mirror2.java
4/10
parameters


Read: 3.1
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: parameter mystery
Program: Stars1.java
Program: Stars2.java
Program: SayHello.java
Program: ParameterMystery.java
4/13
graphics

Read: Supplement 3G
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: basic drawing
Program: DrawingPanel.java
Program: Car1.java
Program: Car2.java
Program: Car3.java
4/15
more graphics

Read: Supplement 3G
Lecture: panopto video, youtube video
Video: parameterized drawing
Program: Car4.java
Program: Draw1.java
Program: Draw2.java
Program: Draw3.java
4/17
return, Math class

Read: 3.2
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: parameters & return values
Diagram: information flow
Program: Days.java
Program: Ball1.java
Link: Boeing integer overflow bug
4/20
Scanner/interactive programs
if/else

Read: 3.3-3.4, 4.1-4.2
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: Scanner
Program: FindSum.java
Program: Ball2.java
4/22
more if/else


Read: 4.4-4.5
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: nested if/else
Video: factoring if/else
Program: BadIfReturn.java
Program: GoodIfReturn.java
Program: BMI1.java
Program: BMI2.java
4/24
String and char


Read: 3.3, 4.3
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: strings
Program: BadBMI.java
Program: SayCheese.java
Program: CreditCard.java
4/27
while loops
fencepost/sentinel loops

Read: 5.1-5.2
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: sentinel loops
Program: Days2.java
Link: zune bug
4/29
pseudorandom numbers


Read: 5.1
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: random numbers
Program: GuessEven.java
Program: Roulette.java
5/1
assertions


Read: 5.5
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: assertions
Handout: assertion problems
5/4
type boolean
more while loop examples
midterm review

Read: 5.3
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: type boolean
Problems: Methods.java
Program: Days3.java
5/6
Functional Programming (optional)



Read: 19
Lecture: panopto video, youtube video
Program: Examples.java
Link: related talk (especially starting at 23:45)
5/8
file input



Read: 6.1-6.2, 5.4
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: token-based processing
Program: Echo.java
Program: Echo2.java
Program: EchoWebPage.java
5/11
line-based processing

Read: 6.3-6.5
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: line-based processing
Video: complex input
Program: Movies.java (imdb.txt)
5/13
arrays

Read: 7.1
Lecture: panopto video, youtube video
Slides: pdf, ppt
Program: Weather.java
Program: Histogram.java (homework.txt)
5/15
more arrays

Read: 7.2
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: array mystery
Video: array traversal
Program: ArraySample1.java
5/18
even more arrays
output files

Read: 7.4, 7.6
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: array tallying
Program: ArraySample2.java
Program: Section.java (section.txt)
Program: ShowArgs.java
5/20
objects and classes
instance methods

Read: 7.3, 8.1-8.2
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: Defining a class
Program: PointClient1.java, Point.java
Program: PointClient2.java, Point.java
5/22
toString, constructors
encapsulation

Read: 8.3-8.4
Lecture: panopto video, youtube video
Slides: pdf, ppt
Slides: pdf, ppt
Video: constructors
Video: encapsulation
Program: PointClient3.java, Point.java
5/25
Memorial Day holiday

5/25
critters

Lecture: panopto video, youtube video
Resources: ass8.zip
5/29
inheritance

Read: 9.1, 9.3
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: inheritance (first example)
6/1
ArrayList

Read: 10.1
Lecture: panopto video, youtube video
Slides: pdf, ppt
Video: ArrayList example
Video: ArrayList example
Program: ArrayListExample.java
6/3
more on arrays

Lecture: panopto video, youtube video
Video: array shifting
Program: ArraySample3.java
6/5
critter tournament

Lecture: panopto video, youtube video
Tournament results