继承

来源:互联网 发布:淘宝号刷了单会跑吗 编辑:程序博客网 时间:2024/05/22 13:22
</pre><h3>继承</h3>我们可能会在一些类中,写一些重复的成员,我们可以将这些重复的成员,单独的封装到一个类中,作为这些类的父类。Student、Teacher、Driver  子类  派生类Person   <span style="white-space:pre"></span>                  父类  基类子类继承了父类,那么子类从父类那里继承过来了什么?首先,子类继承了父类的属性和方法,但是子类并没有继承父类的私有字段。问题:子类有没有继承父类的构造函数?答:子类并没有继承父类的构造函数,但是。子类会默认的调用父类无参数的构造函数,创建父类对象,让子类可以使用父类中的成员。所以,如果在父类中重新写了一个有参数的构造函数之后,那个无参数的就被干掉了,子类就调用不到了,所以子类会报错。解决办法:1)、在父类中重新写一个无参数的构造函数。2)、在子类中显示的调用父类的构造函数,使用关键字:base()<h3>继承的特性</h3>1、继承的单根性:一个子类只能有一个父类。2、继承的传递性:逐层继承下来,最下面继承的拥有上面所有的属性方法等信息.<p></p><p>新建一个父类:Person</p><p>新建三个子类:Student、Teacher、Driver 继承父类Person的属性方法等</p><p>Person父类代码:</p><p></p><pre name="code" class="csharp">    public class Person    {        private string _name;        public string Name        {            get { return _name; }            set { _name = value; }        }        private int _age;        public int Age        {            get { return _age; }            set { _age = value; }        }        private char _gender;        public char Gender        {            get { return _gender; }            set { _gender = value; }        }        public void CHLS()        {            Console.WriteLine("吃喝拉撒");        }    }
Student类代码:
    public class Student:Person    {        private int _id;        public int Id        {            get { return _id; }            set { _id = value; }        }        public void Study()        {            Console.WriteLine("学生会学习");        }    }
Teacher类代码:
    public class Teacher:Person    {        private double _salary;        public double Salary        {            get { return _salary; }            set { _salary = value; }        }        public void Teach()        {            Console.WriteLine("老师会教书");        }    }

Driver类代码:

    public class Driver:Person    {        private int _driveTime;        public int DriveTime        {            get { return _driveTime; }            set { _driveTime = value; }        }        public void Drive()        {            Console.WriteLine("老司机会开车");        }    }
0 0
原创粉丝点击