Skip to main content
๐Ÿ“œ WAYPOINT LESSON

super and the abstract pattern

โญโญโญ advancedโณ 10 min read๐Ÿ“ Lesson 194 of 256

super is one-level lookup; the abstract-parent-with-collection is the decade's most reused FRQ2 shape.

super is a method lookup one level up, not "the parent object." Two forms appear on the exam:

  • super.pay() inside an override: run the parent's version, often then extending it (return super.pay() + bonus;). A W-answer forgets the super. and recurses or drops the base behavior.
  • super(args) as the first constructor statement: parent initializes parent state. If a subclass constructor omits it, the compiler inserts super() โ€” which fails to compile unless the parent has a zero-argument constructor.

Abstract classes add one rule: you cannot new them, but references of the abstract type still dispatch to concrete overrides. The pattern "one abstract parent, two subclasses, one ArrayList of the parent type" is the most reused FRQ2 structure of the last decade โ€” this lab drills exactly that.