What are interfaces/casting?41
  • Interface: a contract listing method signatures, with no bodies
  • implements: a class promises to provide bodies for an interface's methods. Yes — a class can implement multiple interfaces
  • Interfaces vs. extending: Java only allows single inheritance (extends one class), but a class can implement many interfaces — so interfaces let unrelated classes (like Treasure and Monster) share a capability (e.g. Interactable) without forcing them into one rigid "is-a" hierarchy
  • Casting: A syntax for telling the JVM to treat a object as if it is a different (related) type.