Skip to main content

INF1B - top navigation

  • Learn
  • Piazza
  • DRPS

Breadcrumb

  1. Home
  2. INF1B: Informatics 1 - Object Oriented Programming
  3. INF1B: Schedule

INF1B: Week 9: Abstract Classes and Interfaces; Object Design

Week Highlights

By the end of this week, you should understand:

From Lecture 15: 

  • what abstract classes and abstract methods are and when you might use them
  • Why you cannot create an instantiation of an abstract method in the general case
  • How to creating instantiations of abstract methods by extending them
  • When you should use an abstract class and when a concrete class
  • What interfaces are and when you would want to use them
  • Why the Deadly Diamond of Death is not allowed in Java
  • How to implement an interface
  • Why Java allows a class to implement several interfaces but not to extend multiple abstract classes
  • What the comparable interface is and when to use it

Lecture 15: Abstract Classes and Interfaces

  • Slides: 15-abstract-and-interfaces.pdf

Lecture 15 ➡ Objects First: read Chapter 12. Further Abstraction Techniques.

Lecture 16: Object Design

  • Slides: 16-object-design.pdf

Lecture 16 ➡ Objects First: read Chapter 8. Designing Classes.

Lecture 16 ➡ see last slide for web resources.

Tutorial: Assignment 3 part 1 feedback 

TBA

Lab exercises

This week's lab exercises cover inheritance and enums. There are three core exercises.

What should I be doing with assessment?

Assignment 3 will be released this week, and you should start working on part 1.

License
Creative Commons - Attribution Share A Like

Book traversal links for INF1B: Week 9: Abstract Classes and Interfaces; Object Design

  • INF1B: Week 8: More Inheritance plus time for assignment
  • Up
  • INF1B: Week 10: Version Control

Navigation links

  • INF1B: Getting Started: setting up the tools you will need for this course
  • INF1B: Resource List
  • INF1B: Schedule
    • INF1B: Week 1: Intro and Basics; Conditionals and Loops
    • INF1B: Week 2: Arrays; Functions
    • INF1B: Week 3: Classes and Objects; Testing and Debugging
    • INF1B: Week 4: Java API; Collections
    • INF1B: Week 5: Stack vs Heap; Abstraction and Modularisation
    • INF1B: Week 6: Creating classes; Refactoring
    • INF1B: Week 7: Inheritance
    • INF1B: Week 8: More Inheritance plus time for assignment
    • INF1B: Week 9: Abstract Classes and Interfaces; Object Design
    • INF1B: Week 10: Version Control
    • INF1B: Week 11: Catch-up Week
  • INF1B: Assessment
  • INF1B: Tutorials
  • INF1B: Labs
  • INF1B: Labs Site
RSS feed

Opencourse privacy & accessibility statements; contact Informatics, ILTS.