Multiple inheritance means that a class
can have multiple superclasses and inherit from them.
Multiple inheritance can cause several problems:
- Name conflicts of instance variables.
- Methods with the same name from multiple parents.
- Instance variables no longer have simple constant offsets.
Variations of inheritance include:
- Using types of all arguments (not just the first) to determine the
- Method Combination (Flavors): the methods of multiple parents can
be combined, e.g. a window with border and title.
- SendSuper (Loops): a more specialized subclass method can call the
parent method. Useful e.g. to assign serial numbers to manufactured objects.