博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
虚方法、隐藏方法、抽象方法、密封方法、派生类中访问基类成员
阅读量:7234 次
发布时间:2019-06-29

本文共 847 字,大约阅读时间需要 2 分钟。

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成员 和 静态成员

转载于:https://www.cnblogs.com/lztwj/p/7221768.html

你可能感兴趣的文章
Swift语法对编译速度的影响
查看>>
如何在Python下搭建QT+SIP+PyQt5环境
查看>>
说说在 Linux 中如何查看系统信息
查看>>
iphone 常用的app info plist设置
查看>>
快速排序算法的实现
查看>>
傻瓜式入门Redux
查看>>
最新图解 如何提升phpstudy中的mysql版本
查看>>
华山论剑之iOS&tableView的双剑合璧
查看>>
4K超清,2500万人在线,猫晚直播技术全解读
查看>>
人人都能学会的python编程教程2:数据类型和变量
查看>>
支持获取 6.0+设备正在运行程序信息
查看>>
流计算框架 Flink 与 Storm 的性能对比
查看>>
JavaScript数据类型AND深拷贝和浅拷贝的不归路
查看>>
iOS逆向之旅(进阶篇) — HOOK(FishHook)
查看>>
Gradle 3.0.0设置Apk文件输出命名
查看>>
mac 使用php storm的基本配置
查看>>
装饰者模式
查看>>
集成计算引擎在大型企业绩效考核系统的应用方案
查看>>
150. Evaluate Reverse Polish Notation
查看>>
【C】 23_#error 和 #line 使用分析
查看>>