Link Search Menu Expand Document

Computer Science 142: Object-Oriented Programming

Fall 2025

Administrivia

  • Instructor: Phillip Kirlin
  • Office hours: Mon 12-1:30, Tue 2:30-3:30, Wed 1-2, Thu 3:30-5. Also available by appointment.
  • Canvas page: Use for grades, online assignment submissions, and assignment solutions.
  • Syllabus and additional policies.

Resources

Wed, Aug 20
Introduction, syllabus, begin Java
SlidesCode
Reading: Liang chapter 2 (basics)
Handouts: Skeleton programJava basicsPrograms to writeJava data types and variables
Fri, Aug 22
Continue Java: if statements, loops
Code
Reading: Liang chapter 3 (if statements), chapter 5 (loops)
Handouts: while loops
Mon, Aug 25
Miscellaneous math, functions
Reading: Liang chapter 6 (functions)
Handouts: Functions handout
Wed, Aug 27
Lab Lab 1
Fri, Aug 29
Functions
Code
Handouts: Functions practice
Project Project 1, due Thu, Sep 4
Mon, Sep 1
Labor Day (no class)
Wed, Sep 3
Lab Lab 2
Fri, Sep 5
OOP 1
Code
Handouts: SimpleCanvasOOP defs
Homework Homework 1, due Mon, Sep 15
Mon, Sep 8
OOP 2
Code
Handouts: Color API
Wed, Sep 10
Lab Lab 3
Fri, Sep 12
OOP Gotchas
Code
Handouts: Gotchas
Project Project 2, due Thu, Sep 25
Mon, Sep 15
Creating Classes I
Code
Handouts: Creating classes
Wed, Sep 17
Lab Lab 4
Fri, Sep 19
Creating Classes II
Code
Mon, Sep 22
Creating Classes III
Code
Wed, Sep 24
Lab Lab 5
Homework Homework 2, due Mon, Sep 29
Fri, Sep 26
Creating a Fraction Class
Code
Handouts: Fraction class
Mon, Sep 29
Review for midterm
Code
Wed, Oct 1
Exam Midterm I
Fri, Oct 3
Creating a Time Class
Code
Mon, Oct 6
ArrayLists and Strings I
Code
Project Project 3, due Thu, Oct 16
Handouts: ArrayListsStringsFile readingPractice
Wed, Oct 8
Lab Lab 6
Fri, Oct 10:
Fall break
Mon, Oct 13:
ArrayLists and Strings II
Code
Wed, Oct 15
Lab Lab 7
Fri, Oct 17:
Recursion I
SlidesCode
Handouts: Recursion
Mon, Oct 20:
Recursion II
Code
Reading: Recursion. Pay special attention to Figures 18.2 and 18.3 on page 722; these are important to understand.
Wed, Oct 22
Lab Lab 8
Fri, Oct 24:
Recursion III: Recursion with arrays
Code
Mon, Oct 27:
Recursion IV: Binary search
SlidesCode
Project Project 4, due Thu, Nov 6
Handout: Binary search
Wed, Oct 29
Lab Lab 9
Fri, Oct 31:
Inheritance I
SlidesCode
Handout: Inheritance handout
Mon, Nov 3:
Inheritance II
SlidesCode
Handout: Overriding handout
Homework Homework 3, due Mon, Nov 10
Wed, Nov 5
Lab Lab 10
Fri, Nov 7:
Polymorphism I
Code
Handout: Polymorphism handout
Project Project 5, due Fri, Nov 21
Mon, Nov 10
Review for midterm
Wed, Nov 12
Exam Midterm II
Fri, Nov 14:
Abstract classes
Code
Handout: Abstract classes handout
Mon, Nov 10
Interfaces
Code
Handout: Interfaces handout
Wed, Nov 12
Lab Lab 11