Herança múltipla
| Orientação a objetos |
|---|
| Objeto / Instância |
| Classe |
| Abstração |
| Atributo |
| Métodos |
| Encapsulamento |
| Herança / Herança múltipla |
| Associação |
| Polimorfismo |
| Interface |
| Outras referências |
| Paradigma de programação |
| Padrões de projeto |
| UML / RUP |
| Engenharia OO |
Herança múltipla, em orientação a objetos, é o conceito de herança de duas ou mais classes. Ela é implementada nas linguagens de programação C++ e em Python, por exemplo. A linguagem Java possui apenas herança simples (uma classe possui no máximo uma classe pai), mas permite que uma classe implemente várias interfaces.
O uso indiscriminado desta característica pode levar a uma codificação confusa que dificultaria a manutenção do código.[1][2]
Porém, uma interface pode sim ter mais de uma interface pai.
- Ex:
- interface X { }
- interface Y { }
- interface Z extends X, Y { }
Referências
Bibliografia
- Stroustrup, Bjarne (1999). Multiple Inheritance for C++. Proceedings of the Spring 1987 European Unix Users Group Conference
- Object-Oriented Software Construction, Second Edition, by Bertrand Meyer, Prentice Hall, 1997, ISBN 0-13-629155-4
- Eddy Truyen; Wouter Joosen; Bo Nørregaard; Pierre Verbaeten (2004). «A Generalization and Solution to the Common Ancestor Dilemma Problem in Delegation-Based Object Systems» (PDF). Proceedings of the 2004 Dynamic Aspects Workshop (103–119)
- Ira R. Forman; Scott Danforth (1999). Putting Metaclasses to Work. [S.l.: s.n.] ISBN 0-201-43305-2