系列十一、重载 & 重写

一、重载 & 重写

1.1、重载

发生在同一个类中,方法名必须相同。实质表现就是多个具有不同的参数个数或者类型的同名函数,返回值类型可随意,不以返回值类型作为函数重载的标准。

1.2、重写

发生在具有继承关系的父、子类中。方法名、参数列表必须相同,是父类与子类之间的多肽性,实质是对父类的函数重新定义。返回值范围小于等于父类,抛出的异常小于等于父类,访问修饰符大于等于父类,需要注意的是:如果父类的某个方法被私有化了,那么该方法不允许被继承。

1.3、Java的构造方法能否被重写和重载

重写发生在具有继承关系的父子类中,重写的方法名不变,而类的构造方法与类名一致,假设父类的构造方法能够被子类重写,那么子类类名必须与父类类名相同,显然这是不可以的,所以Java的构造方法是不能被重写的。方法重载发生在同一个类中,表现是方法名相同,返回值类型或者参数不同即可,故构造方法可以被重载。

1.4、构造器constructor是否可被override

父类的私有属性和构造方法不能被overide(重写),但是可以overload(重载),所以可以看到一个类中有多个构造方法。

相关推荐
小谢小哥12 小时前
51-限流算法详解
java·后端·架构
1candobetter12 小时前
JAVA后端开发——多模块项目重命名体系解析
java·开发语言·intellij-idea
RainCity12 小时前
Java Swing 自定义组件库分享(二)
java·笔记
程序员老邢12 小时前
【产品底稿 06】商助慧V1.2实战复盘:Milvus向量库重构+RAG仿写升级+前端SSE排版彻底修复
java·人工智能·经验分享·spring boot·ai·milvus
Bat U12 小时前
JavaEE|多线程(四)
java·开发语言
budingxiaomoli13 小时前
SpringBoot快速上手
java·spring boot·后端
juniperhan13 小时前
Flink 系列第15篇:Flink 侧输出(Side Output)详解及实践
java·大数据·分布式·flink
终端行者13 小时前
Jenkins Pipeline在不同阶段指定不同的 agent 或 Docker 容器进行执行任务和固定一个节点分段执行任务,一文带你搞定
java·docker·jenkins·cicd
Engineer邓祥浩13 小时前
知识点1 时间复杂度、空间复杂度
java·数据结构·算法
小小仙。13 小时前
IT自学第三十七天补充
java·开发语言