在Java中,重载和重写是别叫让人混淆的部分,但其实也挺好区别的。
重载 一个类中出现多个同名方法或者是同名构造函数,这就叫方法重载和构造重载
注意这里的关键字是一个类
重载的特点是:方法名字相同且参数列表不同。 与访问修饰符和返回值类型无关。
举个例子:
1 public class Test_01 { 2 public int a = 1; 3 public void show() { 4 System.out.println(a); 5 } 6 public int show(int a){ 7 return a; 8 } 9 }
这就是方法的重载,那构造重载就是同时创建一个有参和一个无参的构造。
下面我们来介绍一些重写-————发生在有父子继承关系时,子类重写父类的方法
可以看出,重写是发生在两个类中的,和重载就能区分开,值得注意的是重写的方法名要保持和父类方法一样的方法名,返回类型。
举个例子:
1 public class Test_01 { 2 protected String name; 3 public void show() { 4 name = "abc"; 5 System.out.println("我的名字是:"+name); 6 } 7 }
public class Test_02 { public class Test_0 extends Test_01 { public void show() { System.out.println("在我介绍"); super.show(); } } }
这里给出一个区别的表格
|
位置 |
方法名 |
参数表 |
返回值 |
访问修饰符 |
方法重写 |
子类 |
相同 |
相同 |
相同 |
不能比父类更严格 |
方法重载 |
同类 |
相同 |
不同 |
无关 |
无关 |
如对本文有疑问, 点击进行留言回复!!
unity的错误解决办法:NullReferenceException: Object reference not set to an instance of an object;tiny proje
Hadoop 之 HDFS (HDFS 数据流的 读写 流程)
听说你一读Spring源码就懵逼?我帮你把架子搭好了,你填就行!
首席架构师推荐:金融保险领域数字化转型实践--如何优雅地修改业务中台中分层应用Maven多模块的版本号?(命令导入式)
[JVM学习之路]一、初识JVM,了解其结构、模型及生命周期
网友评论