Data Structures and Algorithms with Object-Oriented Design Patterns in C#
next up previous contents index

Multiple Inheritance

In C# a class can be derived from only one base class. That is, the following declaration is not allowed:

class A {}
class B {}
class C : A, B // Wrong;
{
}
Nevertheless, it is possible for a class to extend a base class and to implement one or more interfaces:
class A {}
interface D {}
interface E {}
class C : A, D, E
{
}
The derived class C inherits the members of A and it implements all the methods defined in the interfaces D and E.

It is possible to use derivation in the definition of interfaces. And in C# it is possible for an interface to extend more than one base interface:

interface E {}
interface F {}
interface D : E, F
{
}
In this case, the derived interface D comprises all the methods inherited from E and F as well as any new methods declared in the body of D.


next up previous contents index

Bruno Copyright © 2001 by Bruno R. Preiss, P.Eng. All rights reserved.