Computer Science 225
Advanced Programming
Spring 2022, Siena College
Lecture 8: Inheritance Case Studies
Date: Monday, February 21, 2022
Agenda
- Announcements
- Lab 4: More Java Swing (in Canvas and GitHub) due the day before your labs this week
- Grading updates: Problem Set 2
- Problem Set 3: groups and repositories today, the whole thing
is due Friday evening
- Exam 1 info
- topics: up to today's class, Problem Set 3, and Lab 4.
- come to RB 328 on Monday evening, 2/28, start any time between 6 and
8, take up to 2 hours
- will make specific arrangements with the few who can't make it
any time on Monday evening
- in exchange for your 2 hours to take the exam, we will not
have lab on March 2 and 3
- part 1: closed book written section on paper
- data structure efficiencies from lab 1
- memory diagram
- terminology
- interfaces, inheritance, overriding, polymorphism, dynamic
binding
- turn in part 1 to get part 2: practical programs, where all
class resources are available (notes, lecture pages, labs, problem
sets, examples), submit through GitHub
- iterators, comparators, generic methods
- Java Swing and event handlers
- (Finally) wrapping up In-class 6.
- Inheritance case studies from Bailey's structure package
Terminology
- graph
- vertex
- edge
- weighted graph
- adjacent vertices
- path of vertices
- simple path
- cycle
- directed graph/digraph
- undirected graph
- vertex degree, in-degree, out-degree
- connected vertices
- subgraph
- connected component
- acyclic graph
- complete graph
- adjacency matrix
- adjacency list
Examples