Multiple Inheritance

This lesson describes what multiple inheritance is and how Go achieves this via structs.

Multiple inheritance is the ability for a type to obtain the behaviors of more than one parent class. In classical OO languages, it is usually not implemented (exceptions are C++ and Python), because, in class-based hierarchies, it introduces additional complexities for the compiler. But in Go, multiple inheritance can be implemented simply by embedding all the necessary ‘parent’ types in the type under construction.

Look at the following implementation:

Get hands-on with 1200+ tech skills courses.