zoukankan      html  css  js  c++  java
  • 虚方法、隐藏方法、抽象方法、密封方法、派生类中访问基类成员

    1.抽象类

      1.抽象类不能实例化。

      2.抽象类可以包含非抽象成员。

      3.类中一旦包含了抽象成员,类就必须使用 abstract  关键字显示的声明为抽象类。

    2.密封类

      1.密封类不能被继承。

    3.虚方法

      1.把一个基类函数声明为 virtual ,就可以在任何派生类中重写该函数。

      2.派生类在重写方法时,必须用 override 关键字显示的声明。重写后,这个 override 标识的重写方法还是虚拟的。

      3.重写方法时,不能改变虚方法的可访问性。

      4.静态函数不能声明为虚函数,虚函数的概念只对类中的实例函数有意义。

      5.虚函数、抽象函数不能为 private ,因为这样没有意义,不能被继承就不能被重写。

      6.虚函数加重写(基类中 virtual 或 abstract 或 override,派生类中 override)可以实现面向对象的多态性,父类指针指向子类对象。.

      7.本质上,virtual、abstract、override 修饰的方法都是虚方法。

    4.隐藏方法

      1.如果签名相同的方法在基类和派生类中都进行了声明,但方法没有声明为virtual和override,则派生类的方法会隐藏基类的方法。

    5.抽象方法

      1.抽象方法存在于抽象类中。

      2.抽象方法不提供具体实现,必须在派生类中重写。

      3.抽象方法本身也是一直虚方法。

    6.密封方法

      1.密封方法表示:这是一个虚方法,它正在被重写,但是它不希望以后的派生类再重写了。

      2.密封方法sealed必须和override一起使用, sealed override

    7.访问基类的方法和字段

      1.使用 base.基类成员 的形式访问

      2.base 相当于基类的实例

      3.可以在派生类方法中使用

      3.不能方法基类的private成员 和 静态成员

  • 相关阅读:
    利用兼容DC和兼容位图实现图形重绘
    MFC实现文件打开和保存功能实现
    CFile文件操作示例
    利用互斥对象实现线程同步的实例说明
    bootstrap3 input 验证样式【转】
    js event 冒泡和捕获事件详细介绍【转】
    Html+Ajax+Springmvc+Mybatis,不用JSP【转】
    hp电脑重装win7 64位 后 所有软件都装不上问题【转】
    bootstrap 模态 modal 小例子【转】
    servlet 获取 post body 体用流读取为空的问题【转】
  • 原文地址:https://www.cnblogs.com/lztwj/p/7221768.html
Copyright © 2011-2022 走看看