Avoid multiple inheritance

From CSSEMediaWiki
Revision as of 01:43, 23 July 2009 by WarwickIrwin (Talk | contribs)
Jump to: navigation, search

If you have an example of multiple inheritance in your design, assume you have made a mistake and prove otherwise. -- Riel's Heuristic 6.1, Arthur Riel 1996

Explanation

Riel believes that multiple inheritance (MI) is not evil or undesirable; however, it is rarely used correctly. If a situation exists that you believe requires multiple inheritance you should consider this carefully.

Alternatives

Interfaces can often be used instead of multiple superclasses.

Why is it OK to inherit multiple interfaces, but not multiple classes? --Wal

See also

Personal tools