Chapter 8: Interfaces and Polymorphism

Major Concepts

After completing everything in this chapter, you should be able to understand the following:

  1. What polymorphism is.
  2. What interfaces are and the difference between interfaces and abstract classes.
  3. Different interfaces that are a part of Java, and how they can be used in our code.
  4. Best practices around unit tests and interfaces.

Key Terminology

  1. Polymorphism
  2. Interface
  3. Method signature
  4. Default method
  5. Comparable<T>
  6. Comparator<T>
  7. Iterable<T>
  8. List<E>
  9. Map<K,V>