C# - 重写虚方法
2015-08-29 23:14
369 查看
项目目录:
![](http://images2015.cnblogs.com/blog/690985/201508/690985-20150829231342437-1144627787.png)
创建教师类(Teacher),虚方法有Teach();
创建学生类(Student),重写的方法是Teach();
教师类:
· 加上关键字 Virtual 就是声明可以重写此方法。
学生类:
· public class Student : Teacher 继承教师类(Teacher),这样才能重写其中的虚方法。
· 使用关键字 Override 重写继承类中的方法。
调用:
效果:
![](http://images2015.cnblogs.com/blog/690985/201508/690985-20150829231342437-1144627787.png)
创建教师类(Teacher),虚方法有Teach();
创建学生类(Student),重写的方法是Teach();
教师类:
· 加上关键字 Virtual 就是声明可以重写此方法。
using System; namespace Test_Console { public class Teacher { public virtual void Teach() { Console.WriteLine("\t--> 教师类中的讲课方法,可以重写此方法,不重写可以直接调用!\n"); } } }
学生类:
· public class Student : Teacher 继承教师类(Teacher),这样才能重写其中的虚方法。
· 使用关键字 Override 重写继承类中的方法。
using System; namespace Test_Console { public class Student : Teacher { public override void Teach() { Console.WriteLine("\t -->我重写了Teacher类中的Teach方法, 一定先继承,后重写!\n"); } } }
调用:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Test_Console { class Program { static void Main(string[] args) { Student student = new Student(); Teacher teacher = new Teacher(); Console.WriteLine("调用Teacher类中的Teach方法,该方法可重写:\n"); teacher.Teach(); Console.WriteLine("调用Student类中的Teach方法,该方法是重写了Teacher类中的Teach方法:\n"); student.Teach(); Console.ReadKey(); } } }
效果:
![](http://images2015.cnblogs.com/blog/690985/201508/690985-20150829235925172-1916879761.png)
相关文章推荐
- C# - 使用 List<> 泛型给GridView控件数据
- C#基础------字符串函数
- C# ref 和 out ,params关键字的用法
- CSharpGL(0)一个易学易用的C#版OpenGL
- ICSharpCode.SharpZipLib.dll 使用方法
- this(C#)
- this(C#)
- [C#] 等待启动的进程执行完毕
- C#-----多态
- 简述C#中关键字var和dynamic的区别
- 常量、字段、方法、属性和索引器(C#)
- 常量、字段、方法、属性和索引器(C#)
- c#练习习题:while循环
- C#练习题
- C#练习题 if
- C#接口作用的深入理解
- C#练习题 if
- C# Winform快捷键设置
- [CLR via C#]委托
- 在C# 获取当前应用网址