黑马程序员技术交流社区

标题: 新手学习c#比较容易弄混,Abstract和Virtual 的区别和使用 [打印本页]

作者: 王德钊    时间: 2013-1-27 17:45
标题: 新手学习c#比较容易弄混,Abstract和Virtual 的区别和使用
我们在刚开始学习多态时,会很郁闷,不知道Abstract和Virtual 到底该怎么用,有什么区别。我刚开始也有这种疑惑。
Abstract是定义抽象方法,是不能具体实现的,如果想用这个方法,我们需要在子类中进行重写。我们先举个例子:
在抽象类person中,我们定义一个抽象方法draw()。
基类中这样写:public abstract draw();
而在子类中,我们需要重写该方法,
这样写:
public override draw()
{
*******************;
}


而Virtual  最大的不同就是,这个方法定义在基类中时,要看我们自己在子类中重不重写该方法。如果不重写,那这个方法就可以具体实现。如果重写了的话,那
在具体实现时,就是使用子类重写后的该方法。
举个例子:
基类中:
public virtual draw()
{
**************;
}

子类中:
public override draw()
{
**************;
}

我这么说不知道大家明白了没有。有疑问可以继续问我

作者: 许庭洲    时间: 2013-1-27 19:19
值得学习ing!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2