黑马程序员_多态、抽象方法、虚方法

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------


1.如果子类和父类的方法名重名了,会在子类的方法名下方有绿线,解决方案有三种

(1) 在子类的方法的访问 修饰符后面加new

(2) 在子类的方法访问修饰符后面加override ,并且在父类中的访问修饰符后面加virtual

    class Person
    {
        public Person(string name,char gender,int age)
        {
            this._name = name;
            this._gender = gender;
            this._age = age;
        }

        #region 属性
        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }

        private char _gender;
        public char Gender
        {
            get { return _gender; }
            set { _gender = value; }
        }

        private int _age;
        public int Age
        {
            get { return _age; }
            set { _age = value; }
        }
        
        #endregion
        public virtual void Show()
        {
            Console.WriteLine("{0}岁的{1}在传值播客是最纯洁的{2}老师",_age,_name,_gender);
        }
    }
  class Teacher:Person
    {
        public Teacher(string name, char gender, int age,string id):base(name,gender,age)
        {
            this._id = id;
        }
        string _id;

        public string Id
        {
            get { return _id; }
            set { _id = value; }
        }

        public override void Show()
        {
            Console.WriteLine("{0}岁的{1}在传值播客是最纯洁的{2}老师", base.Age, base.Name, base.Gender);
        }
    }

2.子类可以和父类方法名相同的方法
(1)签名不同,既是方法的重载

(2)签名相同,会隐藏基类的方法

3. 子类可以重写父类的方法

(1)父类为虚方法,子类使用override关键字重写

(2)重写基类方法一样可以调用基类方法

4.多态:就是多种形态,指的是父类的引用指向子类的对象,当调用方法时,会动态绑定到子类重写的方法上,实现多种形态

5.抽象类和抽象方法

(1)如果类中有abstract修饰的方法,那么这个方法就是抽象方法,这个方法所在的类,必须是抽象类,即类也要使用abstract修饰,变为抽象类。

(2)抽象类不能被实例化,抽象方法没有方法体

(3)继承抽象类的子类必须重写父类中的抽象方法

(4)抽象成员只能存在于抽象类中



---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------详细请查看: www.itheima.com
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值