Defining an Interface:
Let us look at a simple example for c# interfaces. In this example interface declares base functionality of node object.interface INode |
//Sample for Deriving a class using a C# .Net interface - c# tutorialNow the above code has created a c# class Node that inherits from INode c# interface and implement all its members. A very important point to be remembered about c# interfaces is, if some interface is inherited, the program must implement all its declared members. Otherwise the c# compiler throws an error.
public class Node : INode
{
public Node()}
{}
public string Text
{
get
{
return m_text;
}
set
{
m_text = value;
}
private string m_text;
public object Tag
{
get}
{
return m_tag;
}
set
{
m_tag = value;
}
private object m_tag = null;
public int Height
{
get}
{
return m_height;
}
set
{
m_height = value;
}
}
private int m_height = 0;
public int Width
{
get
{
return m_width;
}
set
{
m_width = value;
}
}
private int m_width = 0;
public float CalculateArea()
{
if((m_width<0)||(m_height<0))}
return 0;
return m_height*m_width;
The above code was a simple example of c# interface usage. Now this has to be followed with some advanced details of interface building in C# .Net. The previous example used only names of methods or properties that have the same names as in interface. But there is another alternative method for writing the implementation for the members in class. It uses full method or property name e.g. INode.CalculateArea () {// implemetation}.
Multiple Inheritance using C# interfaces:
Next feature that obviously needs to be explained is multiple inheritance using c# interfaces. This can be done using childclass that inherits from any number of c# interfaces. The inheritance can also happen with a combination of a C# .Net class and c# interfaces. Now let us see a small piece of code that demonstrate us multiple inheritance using only interfaces as parent data types.class ClonableNode : INode,ICloneable |
is Operator for C# .Net interfaces - C# Tutorial:
At last a new C# operator that can be used to define that class should be explained. It is the is operator. Look at the following piece of code:if(nodeC is INode) |
The Sample Source is downloadable here. An attached example can be compiled using .NET console. You only need to type a filename of your .cs file before csc command and it creates an executable version of it.
Reference :www.codersource.net
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.