虚函数:由virtual声明,它允许在派生类中被重写,要重写方法,必须先声名为virtual
public class myclass
{
public virtual int myint()
{
函数体;
}
}
class myclass1:myclass
{
public override int myint()
{
函数体1;
}
}
抽象类、抽象函数:由abstract声明,在抽象类中可以定义抽象方法,抽象方法基本没有执行代码,派生类必须重写它,提供其执行代码
public abstract class myclass
{
public abstract int myint();
}
public class myclass1:myclass
{
public override int myint()
{
函数体;
}
}
接口类:由interface声明,是特殊的抽象类,是方法、属性、事件和索引符的组合,没有字段,其成员无执行方式,无构造函数,不允许进行运算符重载,接口和它的成员没有任何访问修饰符,它总是公共的,不能声明为虚拟或静态,继承自接口的派生类必须实现接口中的所有方法
interface Imyinterface
{
void myfunction();
string name
{
get;
set;
}
}
class myclass:Imyinterface
{
void myfunction()
{
函数体;
}
string name
{
get
{
return name;
}
set
{
name=value;
}
}
}