注:转载请备注原创地址:https://www.niwoxuexi.com/blog/java/article/169.html
重载(Overload):在类中多个同名函数同时存在,具有不同的参数个数/类型。方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不相同。
特点:与返回值类型无关,只看参数列表。
优点:方便阅读,优化设计。
注意:不能有两个名字相同,参数类型,参数个数也相同却返回不同类型值的函数。
public class A{
//show方法被重载
public void show(){
}
//show方法被重载
public void show(int a){
}
}
函数覆盖(override):出现在继承的关系中,子类中出现了与父类一模一样的方法时,会有覆盖操作。
特点:(1)静态函数只能覆盖静态函数;
(2)覆盖时,子类方法权限一定要大于父类方法权限;
(3)不能抛出新的异常,或者父异常。
应用情景:当子类需要父类功能,而功能主体子类有自己特有功能时,可以复写父类中的方法,这样既包括了父类的功能,又定义了子类特有的功能。
public class A{
public void show(){
System.out.println("A");
}
}
public class B extends A{
//子类B重写了父类A的show方法
public void show(){
System.out.println("B");
}
}
网友评论