第七章面向对象之继承与多态

第七章面向对象之继承与多态

TomHanck4
2022-06-06 / 0 评论 / 0 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年06月12日,已超过1042天没有更新,若内容或图片失效,请留言反馈。

继承的基本概念

继承中的构造方法

密封类

多态

多态

重载

(见第四章第四节)

  • 同一类中
  • 方法名相同
  • 参数不同

重写

  • 子类中
  • 对父类的方法进行修改或者重新编写
  • 父类的对象可以指向子类的实例,并且调用子类重写

重写的步骤

  • 在父类中把某个方法定义为虚方法,使用virtual关键字
    class People
    {
        public virtual void Speak()
        {
            Console.WriteLine("大家好!我是一个人!");
        }
     }
  • 在子类中使用override关键字重写父类的虚方法
   class Student:People//继承
    {
        public override void Speak()
        {
            Console.WriteLine("大家好,我是一名学生,我叫{0},性别{1},年龄{2}",name,sex,age);
        }
    }

总结

继承

  • 子类可以继承父类的非私有成员。
  • 不能继承父类的构造方法,子类构造方法会自动调用父类构造方法,并且父类构造方法先执行,再执行子类构造方法。使用
    base关键字显示调用父类构造方法。base关键字还可以访问父类成员。
  • protectedi访问修饰符修饰的成员可以被子类和本身访问,其他类访问不了。

密封类

  • sealed关键字修饰的类,表示不能被其他类继承。

多态

  • 是指二个或多个不同的类,对同一方法的不同代码实现。
  • virtual、override关键字,子类重写父类的虚方法。
  • 父类对象可以引用子类实例,并且调用子类重写的方法。
0

评论 (0)

取消