微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java 重写(Override)与重载(Overload)的区别

重写(Override)与重载(Overload)

相同点

方法名都是一样的

重写(Override)

关系到两个类:子类,父类
父类中有一个方法不合你的心意的时候,你可以重新编写这个方法
但是!
只能重写这个方法的过程!返回值和形参都不能变!

比如说

这里有一个

public class Father {

	public void Test01(){
	
		System.out.println("瞎写的");
	
	}


}

我觉得这个类的方法写得不行
我建了一个类继承他,这样他就是我的父类了,我就能重写他的方法

public class Son extends Father{
	
	public void Test01(){
	
		System.out.println("不能瞎写");
	
	}

}

重载(Overload)

一个类下定义了多个方法名相同,而他们的参数不同
调用的时候,根据所提供的的参数类型,来决定调用方法是哪一个
比如说,我这里有一个

public class School {

	public void Student(){
	
		System.out.println("我叫张三");
	
	}
	
	public void Student(int num){
	
		System.out.println("我叫李四");
	
	}


}

好比一个学校,学校里都是学生,那你要怎么找到某一个学生呢,那就通过甲方传过来的要求来找
像上面这段代码,当我调用方法没有参数的时候,则调用一个Student()
而当我调用方法有参数的时候,则使用第二个Student(int num)

这就是方法的重载

有一张图我觉得很形象,在下面贴出来看一下吧

image

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐