An interface is a reference type that is somewhat similar to an abstract base class that consists of only abstract members. When a class derives from an interface, it must provide an implementation for all the members of the interface. A class can implement multiple interfaces even though it can derive from only a single direct base class.
Interfaces are used to define specific capabilities for classes that do not necessarily have an "is a" relationship. For example, the IEquatable[`1] interface can be implemented by any class or struct that has to enable client code to determine whether two objects of the type are equivalent (however the type defines equivalence). IEquatable<(Of <(T>)>) does not imply the same kind of "is a" relationship that exists between a base class and a derived class.
Interfaces Tutorial in ASP.Net C#
Hot on Web: