首页 > 其他分享 >重写和重载的区别:

重写和重载的区别:

时间:2023-05-03 16:44:43浏览次数:33  
标签:test1 区别 System 重载 父类 重写 public out

1.重写和重载的区别:
a.重载:
1.java中同一个类中,方法名相同,参数列表不同的同名方法
这叫重载。
2.要求俩个方法方法名相同,参数列表不同,
参数列表不同包括:参数的个数不同,参数的类型不同,参数类型位置不同
3.目的:为了让方法接收不同参数时实现不同功能。典型的是多态

b.重写:
1.重写出现在子类继承父类时,子类对父类方法实现细节的重新定义

2.子类重写父类方法时,不能降低访问权限,可以扩大访问权限
public class Father{
protected void test1(){
System.out.println("father test1")
}

}
//不能将访问权限降为private
public class Son extends Father{
private void test1(){
System.out.println("Son test1")
}
}
//只能public或者protected
public class Son extends Father{
public void test1(){
System.out.println("Son test1")
}
}

3.父类private与final修饰的方法不能被子类重写

4.子类重写父类方法,在处理异常时,只能抛出父类异常的全集,子集或空集
public class Father{
protected void test1() throws NullPointerException,NumberFormatException{
System.out.println("father test1")
}

}
public class Son extends Father{
1.可以没有异常抛出(空集)
protected void test1(){
System.out.println("father test1")
}
2.可以抛出父类异常子集
protected void test1() throws NullPointerException{
System.out.println("father test1")
}
2.可以抛出父类异常全集
protected void test1() throws NullPointerException,NumberFormatException{
System.out.println("father test1")
}

}

5.重写方法返回值,可以缩小返回类型范围,但不可以扩大返回类型范围

标签:test1,区别,System,重载,父类,重写,public,out
From: https://www.cnblogs.com/me-me/p/17369252.html

相关文章

  • Java-方法重载
    方法重载同一个类中,多个方法的名称相同,但是形参列表不同。方法重载的形式同一个类中,方法名称相同、形参列表不同形参的个数、类型、顺序不同形参的名称无关方法重载的调用流程当程序调用一个重载方法时,编译器会根据参数列表的不同自动匹配最合适的方法,这种机制叫做方法重......
  • C++/PTA 函数重载(数据类型不同)
    题目要求用同一个函数名对n(n<=10)个数据进行从小到大排序,数据类型可以是整数、浮点数,用函数重载实现。输入格式:输入n例如3输入n个整数,例如1089输入n个浮点数例如10.235.167.99输出格式:输出n个整数的升序排列:8910以空格间隔,并以空格结尾换行,输出n个浮点数的升......
  • typescript重写canvas --7.利用clip在指定区域绘图
    typescript重写canvas--7.利用clip在指定区域绘图1.使用canvas利用clip在指定区域绘图<!DOCTYPEHTML><html><head><metacharset="utf-8"/></head><body><canvasid="myCanvas"width="250"height="200......
  • 用alter table添加索引与create index区别
    1、altertable一次可以添加多个索引,createindex一次只能创建一个。创建多个索引时,altertable只对表扫描一次,效率较高。2、altertable可以不指定索引名,此时将使用索引列的第一列的列名;createindex必须指定索引名。因此,altertable添加索引更灵活,所以在创建索引的时候提倡使用a......
  • 2023-04-30:用go语言重写ffmpeg的resampling_audio.c示例,它实现了音频重采样的功能。
    2023-04-30:用go语言重写ffmpeg的resampling_audio.c示例,它实现了音频重采样的功能。答案2023-04-30:resampling_audio.c是FFmpeg中的一个源文件,其主要功能是实现音频重采样。音频重采样是指将一段音频数据从一个采样率、声道数或样本格式转换为另一种采样率、声道数或样本格......
  • let var const 的区别
    首先要明确变量的初始化就是给变量赋一个初值前言:1.let和const是es6新出来的语法2.由此可见,let和var声明的变量值可以修改,而const不可以修改3.由此可见,const声明的常量必须初始化,否则会报错(翻译过来就是:常量声明中缺少初始值设定项)。如果你要声明一个常量,必须要赋初......
  • MemCached,OsCache,EhCache区别
    Memcache:分布式内存对象缓存系统,占用其他机子的内存。很多互联网,负载均衡三台(以三台为例)web服务器可以共享一台Memcache的资源。传递的信息以键值对的形式存储。传递的数据要实现序列化。 ---------------------------------------------------------------------------------......
  • isEqual和==区别
    再看文档时留意到isEqual方法,但是我们比较的时候有时候就用==来比较,这2个有似乎没区别呢?网上有人说==来比较指针,isEqual是比较内容,其实这个话如果深究起来,并不是那么准确,我用代码测试了下:1.str1=@"111";2.str2=@"111";3.4.if([str1isEqual:str2]){5.NSLog......
  • CloudKit 是什么,与 iCloud 云盘的区别是什么
    iCloudDrive和CloudKit的区别iCloudDrive其实就跟微软的OneDrive,百度网盘,天翼云盘一样,就是普通的云盘,你上传的文件,你登陆了云盘,这些存储的文件都是可见的。CloudKit就是苹果提供的在线数据库,开发者可以在线使用,有免费的存储,他的最明显特征就是,存在的数据支持历史版本......
  • odbc和jdbc的区别与联系
    一、定义 ODBC (OpeDatabaseConnectivity),开放数据库互联,是微软公司开发和定义的一套数据库访问标准,用户也可以直接将sql语句送给ODBC。通过使用ODBC,应用程序能够使用相同的源代码和各种各样的数据库进行交互。下面是ODBC应用系统的体系结构。一个基于ODBC的应用程序,对数据......