首页 > 代码库 > 面向对象的复习_继承

面向对象的复习_继承

继承
解决代码的冗余,实现多态,增加了代码的扩展性,便于维护
继承的特性:
1.单根性:一个子类只能有一个父类
2.传递性:孙子继承爷爷
3.子类能继承父类的方法和属性,不能继承私有字段
4.子类调用父类的构造函数用使用关键字base
5.父类只能调用自己的成员,不能和使用子类的成员
6.子类之间也不能互相使用对方的成员

    public class Person    {        public string Name//自动属性        {            get;            set;        }        public int Age        {            get;            set;        }        public char Gender        {            get;            set;        }        public Person(string name, int age, char gender)//构造函数        {            this.Name = name;            this.Age = age;            this.Gender = gender;        }        public void CHLSS()//方法        {            Console.WriteLine("吃喝拉撒睡");        }    }    public class Student : Person//继承父类    {        //在子类中调用父类的构造行数 用关键字base        public Student(string name, int age, char gender, int id)            : base(name, age, gender)        {            this.Id = id;        }        public int Id        {            get;            set;        }    }    public class Teacher : Person    {        public Teacher(string name, int age, char gender, double salary)            : base(name, age, gender)        {            this.Salary = salary;        }        public double Salary        {            get;            set;        }    }

 

面向对象的复习_继承