In this chapter you’ll learn:
• How polymorphism enables you to “program in the general” and make systems extensible.
• To use overridden methods to effect polymorphism.
• To create abstract classes and methods.
• To determine an object’s type at execution time.
• To create
sealed methods and classes.
• To declare and implement interfaces.
• To overload operators to enable them to manipulate objects.
One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
—John Ronald Reuel Tolkien
General propositions do not decide concrete cases.
—Oliver Wendell Holmes
A philosopher of imposing stature doesn’t think in a vacuum. Even ...