Lecture 3

Abstract Data Type & Java Interface

Learning Outcomes

At the end of this lecture, you’ll be able to:

Lecture Plan

In this lecture, we'll cover the following lessons:

  1. The Roster Class: Two Types of Roster
  2. Two Types of Roster: Critique Design Decisions
  3. Two Types of Roster: Using an Abstract Class
  4. Two Types of Roster: Extending an Abstract Class
  5. The Roster Class: An Abstract Data Type!
  6. Java Interlude: Abstract Classes
  7. Java Interlude: Java Interfaces
  8. Java Interlude: Implementing Interfaces
  9. Java Interfaces: The Nuances
  10. Class Diagram: Exercise
  11. IndexedList: Our first ADT!
  12. IndexedList: Code Contracts Using Documentation Comments

Lessons marked with ⚡ contain exercise/activity.