系列十一、重载 & 重写

一、重载 & 重写

1.1、重载

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

1.2、重写

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

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

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

1.4、构造器constructor是否可被override

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

相关推荐
前路不黑暗@15 小时前
Java项目:Java脚手架项目的 C 端用户服务(十五)
java·开发语言·spring boot·学习·spring cloud·maven·mybatis
好学且牛逼的马16 小时前
从“Oak”到“虚拟线程”:JDK 1.0到25演进全记录与核心知识点详解a
java·开发语言·python
追随者永远是胜利者16 小时前
(LeetCode-Hot100)62. 不同路径
java·算法·leetcode·职场和发展·go
好学且牛逼的马16 小时前
从“XML汪洋”到“智能原生”:Spring Framework 1.x 到 7.x 演进全记录与核心知识点详解(超详细版)
java
追随者永远是胜利者16 小时前
(LeetCode-Hot100)56. 合并区间
java·算法·leetcode·职场和发展·go
追随者永远是胜利者16 小时前
(LeetCode-Hot100)55. 跳跃游戏
java·算法·leetcode·游戏·go
知识即是力量ol17 小时前
Java 虚拟机:JVM篇
java·jvm·八股
快乐zbc17 小时前
苍穹外卖 - 菜品起售/停售复习笔记
java·笔记
Cosmoshhhyyy17 小时前
《Effective Java》解读第41条:用标记接口定义类型
java·开发语言
Anastasiozzzz18 小时前
深入浅出:理解控制反转 (IoC) 与 Spring 的核心实现
java·后端·spring