在Java学习中,不可避免的会看到Override和Overload两个注解
简单来说谈谈我对这两者的看法
首先这两个注解都是应用于在类中的方法上的
顾名思义
重写就是对方法进行重写改写,而改写的内容则是针对于方法中的内容
经常应用于子类继承父类的情况写对父类中的方法进行重写
public class A{
public void old(int a){
return a;
}
}
public class B extend A{
@Override
public void old(int a){
return a+1;
}
}
对于上述程序来说就是一个重写的简单应用,在上述代码片段中,B是A的一个子类
在B中重写了A的方法old.
对于原方法来说改方法的返回值是传入的int a
而重写后的方法则变成了a+1
由此可解释重写
再来说说重载
一样的,重载的意思就是重新载入
针对的则是方法本身,一般出现在同一个类中,对于重写不同,重载需要保证方法名相同,而对于方法的参数列表则需要进行改变
public class c{
public void a(int a){
return a;
}
public void a(String a){
return a;
}
}
如上述例子所体现,在类C中
有两个方法a,但两个方法所传入的参数列表不同,对于这两个方法来说就是重载
以上就是我对重载和重写的简单理解!如有错误欢迎指出!