news 2026/4/22 21:37:43

揭秘多态编程:重载、抽象与虚方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
揭秘多态编程:重载、抽象与虚方法

《多态之函数重载》

封装 继承 多态 抽象
多态:同一个方法不同形态体现,
多态分静态多态和动态的多态
静态多态:函数重载和符号重载
动态多态:抽象和虚方法

函数重载:在同一个范围内,函数名一样,参数的类型不一样,或者是参数的个数不同,这样函数就是重载
仅仅只有返回值类型不一样,不属于函数的重载

《多态之符号重载》

符号重载:把常用的算术运算符号,逻辑运算符号按照自己的方式进行运算(能够使用对象运算)
例如计算+,可以计算俩个数字相加,10+10=20
符号重载可以+实现对象相加
如果想实现两个对象相加,可以通过符号重载实现

重载+让两个对象相加,计算两个对象面积相加的结果
符号重载定义静态的方法,在符号前面添加opertor关键字

《多态之抽象类》

动态多态表现:抽象
抽象类:用于提供类的部分成员实现,包含抽象方法也可以普通的方法,如果是抽象方法不用去实现,谁继承这个抽象谁去实现抽象方法
抽象类里面也可以定义抽象成员,如果是抽象成员,需要在派生类去实现成员
定义抽象类public abstract class People{}
定义抽象方法 public abstract void Sayhello(int a);

派生类实现的时候添加override关键字 public override void Sayhello(int a) {

《虚方法》

抽象方法和虚方法的区别
1抽象成员和抽象方法只能定义抽象类里面,但是虚方法和虚成员可以定义在普通类里面
2抽象方法和抽象成员在抽象类不能实现,但是虚方法和虚成员可以定义普通类里面可以实现
3抽象方法和抽象成员在派生类必须实现,但是虚方法和虚成员可以不用在派生类实现
4 可以使用overid重写基类的抽象方法或者虚方法

《密封类》

抽象类被继承
sealed 密封类,特点不能被继承

密封类不允许被继承的,虚方法设计目的就是为了在子类重写这个虚方法,俩者设计理念违背了

静态类:添加静态成员 ,不能new实例化

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 9:56:12

小程序毕设项目:基于springboot+微信小程序的快递代取系统的设计与实小程序(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/20 19:49:28

绿色工厂认证:制造业绿色转型的必经之路

在“双碳”目标引领下,绿色发展已成为制造业转型升级的核心方向。绿色工厂认证作为衡量企业绿色制造水平的权威标尺,正推动越来越多企业走上“用地集约化、原料无害化、生产洁净化、废物资源化、能源低碳化”的发展道路。这一认证不仅是企业履行环保责任…

作者头像 李华
网站建设 2026/4/23 11:27:29

自学黑客搞网络安全?真心奉劝普通人:别再浪费时间了!

自学黑客(网络安全),一般人我劝你还是算了吧! PART.01 自学网络安全的误区和陷阱 1.不要试图先成为一名程序员(以编程为基础的学习)再开始学习 一再强调不要以编程为基础再开始学习网络安全,…

作者头像 李华
网站建设 2026/4/17 10:06:46

AI如何解决Linux依赖问题:以sunloginclient为例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个AI辅助工具,能够自动分析Linux系统中dpkg报出的依赖关系错误。输入为错误日志(如sunloginclient依赖问题),输出应包括&#…

作者头像 李华
网站建设 2026/4/23 11:33:58

SCRAM认证机制入门:从报错到解决

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个新手教学项目:1. 解释SCRAM认证机制的基本原理;2. 演示invalid or unsupported by client scram mechanisms错误的常见原因;3. 提供简单…

作者头像 李华