Introduction to OOP: Chapter 20 : A Second Look at Classes
Example - Lines and Pens
Suppose we have an object that can draw a line.
From it we build an object
that remembers it's location and can can be moved on the screen - a Pen.
From this we can build a different pen that remembers different locations,
but we don't need to redo the drawing code.
Alternatively, we can create a different object that remembers its location
and its orientation - a Turtle.
Alternatively, we can create a different object that draws four copies of
any drawing command in reflections.
Intro OOP, Chapter 20, Slide 12
The idea of a turtle comes from the programming language LOGO.