As of this writing, Java does not have multiple implementation inheritance, and Microsoft's Component Object Model (COM) does not have implementation inheritance at all. Both, however, offer multiple interfaces (polymorphism without inheritance) as a substitute. Despite the goal of keeping programmers away from bugs associated with multiple implementation inheritance, there are times when multiple implementation inheritance is appropriate
SYSTEMS DEVELOPMENT GUIDELINES SIMULATION OBJECT ORIENTED PROGRAMMING