Objectives
Some bad reasons to create classes
How to make classes rigid and inflexible
Lesser alternatives to polymorphism
How to abuse inheritance in order to compromise your software design
Prerequisites
- The basic ideas behind object-oriented programming, particularly:
Instantiation and the difference between a class and an object
Composition (i.e., one class containing a reference to another class)
Inheritance
Static methods
Interfaces in Java, and the interface keyword
Introduction
Like modular programming, ...