java中重载与重写的区别

article/2025/11/7 15:55:04

 

重写(Overriding

重载(Overloading

类的数量

父子类、接口与实现类

本类

方法名称

一致

一致

参数列表

一定不能修改

必须修改

返回类型

一定不能修改

可以修改

异常

可以减少或删除,但不能扩展

可以修改

重载(Overloading

重载发生在本类,方法名相同,参数列表不同,与返回值无关,只和方法名,参数列表,参数的类型有关.

重载(Overload):首先是位于一个类之中或者其子类中,具有相同的方法名,但是方法的参数不同,返回值类型可以相同也可以不同。

(1):方法名必须相同

(2):方法的参数列表一定不一样。

(3):访问修饰符和返回值类型可以相同也可以不同。

其实简单而言:重载就是对于不同的情况写不同的方法。 比如,同一个类中,写不同的构造函数用于初始化不同的参数。

public class Test1 {public void out(){System.out.println("参数"+null);}//参数数目不同public void out(Integer n){System.out.println("参数"+n.getClass().getName());}//参数类型不同public void out(String string){System.out.println("参数"+string.getClass().getName());}public void out(Integer n ,String string){System.out.println("参数"+n.getClass().getName()+","+string.getClass().getName());}//参数顺序不同public void out(String string,Integer n){System.out.println("参数"+string.getClass().getName()+","+n.getClass().getName());}public static void main(String[] args) {Test1 test1 = new Test1();test1.out();test1.out(1);test1.out("string");test1.out(1,"string");test1.out("string",1);}
}

 

重写(Overriding

重写发生在父类子类之间,比如所有类都是继承与Object类的,Object类中本身就有equals,hashcode,toString方法等.在任意子类中定义了重名和同样的参数列表就构成方法重写.

重写(override):一般都是表示子类和父类之间的关系,其主要的特征是:方法名相同,参数相同,但是具体的实现不同。

重写的特征:

(1):方法名必须相同,返回值类型必须相同

(2):参数列表必须相同

(3):访问权限不能比父类中被重写的方法的访问权限更低。例如:如果父类的一个方法被声明为public,那么在子类中重写该方法就不能声明为protected。

(4):子类和父类在同一个包中,那么子类可以重写父类所有方法,除了声明为private和final的方法。

(5):构造方法不能被重写,

简单而言:就是具体的实现类对于父类的该方法实现不满意,需要自己在写一个满足于自己要求的方法。

class Test{public void out(){System.out.println("我是父类方法");}
}public class Test1 extends Test{@Override//方法签名完全一致public void out() {System.out.println("我是重写后的子类方法");}public static void main(String[] args) {Test test = new Test();test.out();test = new  Test1();test.out();}
}

 


http://chatgpt.dhexx.cn/article/mvP44Vt9.shtml

相关文章

重载和重写的区别有哪些?

重载和重写的区别有以下几点: 一、定义上的区别: 1、重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。 2、覆盖(也叫重写)是指在派生类中重新对基类…

重载和重写有什么区别

一、定义上的区别: 1、重载是指不同的函数使用相同的函数名,但是函数的参数个数或类型不同。调用的时候根据函数的参数来区别不同的函数。 2、覆盖(复也叫重写)是指在派生类中重新对基类中的虚函数(注意是虚函数&…

重载和重写区别

以下都是Java的基础面试题,相信大家都会有种及眼熟又陌生的感觉、看过可能在短暂的面试后又马上忘记了。JavaPub在这里整理这些容易忘记的重点知识及解答,建议收藏,经常温习查阅。 文章目录 3. 重载和重写区别10道不得不会的Java基础面试题 3…

getBytes的坑

由于业务需要,想要获取value字符串的字节长度,于是用了下面方法。 int length value.getBytes().length; 发包给测试的时候,于是奇怪问题产生了。 测试的运行效果和我这边不一样。 1、重启服务 2、查看class确认是否正确打包 然而都没…

java中bitconverter_BitConverter.GetBytes 方法以什么顺序返回字节数组

前言 我在“浅谈 ZipInteger”一文中的 ZipInteger 结构中使用了 BitConverter 类的 GetBytes 方法。当时我是假设 GetBytes 方法根据 IsLittleEndian 的值不同而按照不同的顺序返回字节数组。但是 MSDN 有关 BitConverter 类的文档中没有对此作出明确的说明。请参见我在 MSDN …

java Getbytes转中文,java new String getBytes 到底怎么转换字符集的问题

我们常常遇到字符集转换的问题。 我要说的当然不是网站中遇到的ISO8859-1的那个傻BUG。 实例: 目标,把一个UTF-8的中文字符串转化成GBK的字符串。 新建一个GBK的java项目。 也就是说*.java文件中的字符是用GBK字符集保存的。 在main中,建一个中文字符串,那么这个静态串就是…

java getbytes 乱码_深入解析java String中getBytes()的编码问题

Java服务器后台在和Android端App通信时,遇到了两端关于用MD5加密同一包含中文的字符串结果不一致的问题。 具体问题描述: Java服务器后台和Android端AS用了同一个MD5的工具类,且两边项目的默认编码都是UTF-8 ,加密纯英文数字的字符…

java getbytes 长度_JAVA中的getBytes()方法

在Java中,String的getBytes()方法是得到一个操作系统默认的编码格式的字节数组。这个表示在不同情况下,返回的东西不一样! String.getBytes(String decode)方法会根据指定的decode编码返回某字符串在该编码下的byte数组表示,如: Java代码 byte[] b_gbk = "深"…

getBytes方法

字符串中的字符变成一位一位的01比特流 一个英文字符占8比特,也就是一个字节 一个中文字符占24比特,也就是3个字节(其实不同编码方式,占几个字节不一样,我们这里采取的UTF-8编码方式,具体可以看下图&…

最全微信小程序源码项目开发代码合集

小程序源码是用PHP和Java编程语言编写的程序,可以包含在HTML页面中,就像图像包含在页面中一样。您在本教程中构建的应用程序向您展示了如何在IDE中构建和部署微信小程序源码。      源码:y.wxlbyx.icu      创建或导入Applet源文件  …

智慧外链微信小程序源码1.8版本

好不容易搞到的一套最新版的,又废了老大劲搭建了起来,想用于抖音跳转微信加好友使用,不知道是不是哪里没操作对,没达到想要的效果 现在分享出来给大家,人多力量大,跑起来的可以分享一下经验 前端、后端模块…

最新抓取微信小程序源码教程+附逆向工具WxappUnpacker

正文: 文章目录 前言一、工具准备(免费) 1 解密工具2 逆向工具二、解密小程序 1.确认小程序包位置2.打开一个小程序3.解密小程序包三、逆向小程序 1、检查nodejs2、安装依赖3、正式逆向 前言 想成为一名微信小程序的开发者,前端思路的学习…

云开发多功能工具箱微信小程序源码/带流量主微信小程序源码

☑️ 编号:ym398 ☑️ 品牌:无 ☑️ 语言:微信小程序 ☑️ 大小:2MB ☑️ 类型:云开发多功能工具箱 ☑️ 支持:微信小程序 🎉 欢迎关注(发消息才不限制),私信,领取 &…

2048微信小程序源码

2048微信小程序效果 布局页面 页面结构 <view class"action_cavas" bindtouchstart"tapStart" bindtouchmove"tapMove" bindtouchend"tapEnd"> <view class"score"><view class"title">2048<…

微信小程序源码获取(附工具的下载)

在很多时候我们需要对微信小程序的页面样式进行借鉴。所以我们需要对它进行反向破解。下面是反向破解的流程图 第一种是对微信电脑桌面小程序进行破解&#xff1a; 只要你登录电脑wx并使用过小程序&#xff0c;那么对应的路径下的WeChat Files\Applet下就会产生很多.wxapkg结…

微信小程序源码反编译

一、前言 我百度了各种关于小程序地反编译教程&#xff0c;但是感觉都不太适合像我这样地初学小白&#xff0c;踩了挺多坑。在这里把我重新简化好的&#xff0c;快速地获取一个微信小程序源码的方式记录下来。 二、简单聊一下xxxxx.wxapkg 先来想想一个很简单的问题&#xf…

一键生成动漫头像微信小程序源码

一键生成动漫头像微信小程序源码&#xff0c;只需要上传一张图片&#xff0c;即可在线由AI生成一张动漫头像&#xff0c;非常的Nice&#xff01; PS&#xff1a;使用国一个免费AI接口&#xff0c;不保证该接口能永久使用。 下载 https://pan.baidu.com/s/1P6yyjNdi1-HiLi7aMdnV…

1000个微信小程序源码分享

文章目录 微信小程序源代码获取开发账号注册 小程序部分源码展示程序展示 微信小程序 现在的微信小程序非常火爆&#xff0c;网上也有很多学习资源&#xff0c;但是源码资源还是很少的。其实在学习开发微信小程序的时候如果有源码可以供我们借鉴&#xff0c;学习效率也会成倍的…

2048小游戏微信小程序源码

哈喽&#xff01;大家好&#xff0c;我是HappyGirl快乐女孩&#xff0c;最爱海贼王&#x1f49e;&#x1f49e;&#x1f49e; 是一位爱好技术的【技术Fans】&#xff01;&#x1f61c;&#x1f61c;&#x1f61c; &#x1f49e;&#x1f49e;&#x1f49e; 如果有对技术感兴趣的…

发卡系统微信小程序源码

发卡系统微信小程序源码&#xff0c;带流量主广告。源码花钱买来的&#xff0c;已测试完美运行&#xff0c;搭建简单&#xff0c;功能完善。 可开流量主&#xff0c;看广告领取&#xff0c;也可以直接对接官方支付&#xff0c;非云开发。 下载&#xff1a; https://pan.baidu.c…