The School Design Group Tools for people who build schoolsand the teachers who bring them to life

← All toolkits

Part of Computer Programming I

Unit 9: Inheritance and Polymorphism

Computer Programming II Java, unit 9 of 12

Unit 8 left a list that could only hold one class of object and student objects that could not be sorted by a field the student chose. This unit pays both. It covers the same code sitting in two classes, extends and what a child gets for free, super and protected, overriding a parent method, overriding toString and equals across a family, calling super.method to add rather than erase, one variable with many types, a list that holds the whole family, a parent nobody should ever build, abstract methods that force every child to answer, interfaces as a promise without the parts, Comparable, and the choice between an abstract class and an interface.

The performance task is The Hierarchy That Earned Itself. The code is one parent type and at least two children, a driver that puts every object into a single ArrayList of the parent type and loops over it once, and at least one place where a child calls super rather than replacing the parent behaviour. The graded centre is a written defense of at least 300 words that applies the is-a and substitution tests to each pair, describes the composition alternative the student rejected in enough detail that a reader could build it, names one thing deliberately not inherited, and justifies whether the parent is abstract, concrete or an interface.

The design decision is assessed as a decision. A correct hierarchy defended only by restating a definition cannot score above the middle band, and a student who concludes honestly that composition would have been better, then shows the composition version, earns full credit on that criterion. A teacher gets a plan and a substitute plan for each of the eighteen lessons, answer keys, tiered handouts, and a sentence frames card for defending a design decision that stays on the desk during the task.

The unit runs 18 instructional days.

What's inside

  • A teach plan for each of the 18 lessons, plus a one page substitute plan per lesson
  • Handouts on extends, super and protected, overriding, and adding to a parent method rather than erasing it
  • One Variable, Many Types, and A List That Holds the Family, with SUPPORT and STRETCH tiers
  • Abstract class and abstract method labs, an interfaces lab, and a Comparable lab that makes student objects sortable
  • Abstract Class or Interface, with a Which Tool reference card
  • Is-a or Has-a, tiered, where every item requires a choice and the rejected alternative in writing
  • Mid-unit checkpoint with answer key, and answer keys for the graded handouts
  • The Hierarchy That Earned Itself task with the design defense planner, the class diagram requirement, the rubric and the key

Who it's for

  • Teachers who want inheritance assessed as a defended decision rather than a definition
  • Programs preparing students for the Certiport inheritance and polymorphism objectives
  • AP Computer Science A teachers preparing the inheritance free response question type

License, plainly

Adapt it, rename it, put it on your letterhead, use it as your own. The single license covers one classroom or one organization; the school license covers everyone in the building or department. Do not resell it or publish it as a template product. Full terms.

Also useful

Course

Computer Programming II: Java

Twelve units, 180 days, twelve performance tasks, a lesson plan and a substitute plan for every lesson, aimed at Certiport IT Specialist Java.

Course

Computer Programming I

Twelve units, 180 days, 665 documents. Binary to capstone, with a portfolio and interview practice at the end.