·
An abstract class may contain complete or
incomplete methods. Interfaces can contain only the signature of a method but
no body. Thus an abstract class can implement methods but an interface cannot
implement methods.
·
An abstract class can contain fields,
constructors, or destructors and implement properties. An interface cannot
contain fields, constructors, or destructors and it has only the property's
signature but no implementation.
·
An abstract class cannot support multiple inheritance,
but an interface can support multiple inheritance. Thus a class may inherit
several interfaces but only one abstract class.
·
A class implementing an interface has to
implement all the methods of the interface, but the same is not required in the
case of an abstract Class.
·
Various access modifiers such as abstract,
protected, internal, public, virtual, etc. are useful in abstract Classes but
not in interfaces.
·
Abstract classes are faster than interfaces.
No comments:
Post a Comment