当前位置: 首页 > news >正文

【Java 面试合集】重写以及重载有什么区别能简单说说嘛

重写以及重载有什么区别能简单说说嘛

前述

这是一道非常基础的面试题,我们在回答的过程中一定要逐一横向比较。

从方法的 修饰符返回值方法名含义参数等方面进行逐一分析来比较不同。

话不多话,看下面的图文。

在这里插入图片描述

1. 重载实例

public class Test001 {public void run(int number) {System.out.println("run(int number)");}public void run(String str) {System.out.println("run(String str)");}public int run(int number, String str) {System.out.println("run(int number, String str)");return 0;}private String run(String str, int number) {System.out.println("run(String str, int number)");return "";}
}

上述的实例实现了方法重载,方法重载的特征是:同一个类中,方法签名相同,参数列表不同

参数列表代之指:类型不同, 个数不同, 顺序不同

所以重载只跟函数签名 以及参数列表有关系,跟其他无关。

2. 重写实例

父类代码

public class Parent extends SuperP{public Parent run(int number) {System.out.println("run(int number)");return new Parent();}
}

子类代码

public class Child extends Parent {public void eat(String str) {System.out.println("eat(String str)");}@Overridepublic Parent run(int number) {return new Child();}
}

上述示例中 子类重写了父类的run方法。

既然是重写的话,那么函数签名以及参数列表是必须相同的。
但是针对于返回值,父类的返回值一定是大于等于子类的,这个符合了多态的特征。可以理解为Person p = new Child()

这里的大于呢,其实就是继承关系,就是父类的返回值一定是子类返回值的本身或是父类才行。

3. 应用实例

  • 重载

重载的意义在于 当方法功能相似,但是参数不同,这个时候我们就可以使用重载

  • 重写

重写一定发生在继承关系中,也就是子类可以重写父类的方法。当父类的方法不满足于子类的时候,子类就可以重写。

http://www.lryc.cn/news/1450.html

相关文章:

  • 到底什么是股票委托接口?
  • Linux驱动:VPU
  • 简介Servlet
  • Learning C++ No.7
  • 【MyBatis】第八篇:一级,二级缓存
  • 【大唐杯备考】——5G基站开通与调测(学习笔记)
  • redhat7 忘记root密码,重置办法
  • QML- 对象属性
  • 将.js文件转成vue标签结构的样式
  • 前端知识点复盘
  • 前端JavaScript获取图片文件的真实格式
  • 今天面了一个来华为要求月薪25K,明显感觉他背了很多面试题...
  • 11 Advanced CNN
  • 亿级高并发电商项目---万达商城项目搭建(二)
  • UML术语标准和分类
  • LeetCode 刷题系列 -- 151. 反转字符串中的单词
  • 二十二、Gtk4-ListView
  • ASP.NET Core3.1实战教程---基于Jquery单文件上传
  • 10 卷积神经网络CNN(基础篇)
  • Windows下LuaBridge2.8的环境配置及简单应用
  • 每天10个前端小知识 【Day 10】
  • 【LeetCode】1223. 掷骰子模拟
  • SPSS数据分析软件的安装与介绍(附网盘链接)
  • 2022年38女神节大促美妆、珠宝、母婴、保健电商数据回顾
  • Java笔记-线程同步
  • 通过python 调用OpenAI api_key提交问题解答
  • 图表控件LightningChart .NET再破世界纪录,支持实时可视化 1 万亿个数据点
  • 什么是响应性?
  • 黑马】后台管理176-183
  • Typescript - 类型守卫(typeof / in / instanceof / 自定义类型保护的类型谓词)通俗易懂详细教程