本来是不想把这个例子放到上面去的,但是看了一下,发现他还是有一个好的优点值得我们去使用的。在讲到抽象类的时候之前提到了,抽象类不能实例化:如图的就是一个实例化的过程
People类就不能实例化。所以这里借助了普通类对抽象类的继承,来实现了抽象类中方法的实现。这对于一些公共方法,我们就可以创建抽象类来容纳。然后用普通类来继承抽象类里面的方法,而且不用重复的编写相同的代码,达到简化代码的效果。大家试试看吧。
namespace 抽象类的使用 { class Program { static void Main(string[] args) { Student student = new Student(); student.Eat(); student.Study(); Console.ReadLine(); } } /// <summary> /// 抽象类People /// </summary> public abstract class People { /// <summary> /// 年龄字段
/// </summary> private int age; private string name; /// <summary> /// 姓名属性 /// </summary> public string Name { get { return name; } set { name = value; } } public int Age { get { return age; } set { age = value; } } public void Eat() { Console.WriteLine("Eat方法被调用"); } } /// <summary> /// Student类,继承抽象类People /// </summary> public class Student : People { private string school; public string School { get { return school; } set { school = value; } } public void Study() { Console.WriteLine("Study方法被调用"); } } public class Worker : People { private string factory; public string Factory { get { return factory; } set { factory = value; } } public void Work() { Console.WriteLine("Work方法被调用"); } } }