Use different kinds of balls (e.g., football, baseball, basketball, small rubber ball) to introduce inheritance hierarchies visually.
Justify the reason that Java Strings are immutable by showing how Strings might be packed together in the heap to help students resolve incomplete understandings in their mental model.
Analogize stacks and interrupts using a story in which a person is frequently interrupted in the course of performing everyday tasks.
To help students formalize their knowledge of data structures, act out these abstract ideas as a class.
Use graphs, visualizations, and examples to help make seemingly ‘ill-defined’ topics like Big-O feel more concrete.
Often, intuitive examples trump overly-technical description for introductions to tricky concepts such as Big-O runtime.