override:覆写是对接口方法名实现
overload:重载 同一个类里同一个方法名,有不同入参
overwrite:重写 重写父类所属方法
覆盖(override)
继承了父类的同名无參函数:当子类从父类继承一个无參方法,而又定义了一个同样的无参数的方法时,则子类新写的方法覆盖父类的方法,成为覆盖
class Super{
public void NoParametersMethod(){
System.out.println("Super Method....");
}
}
class subClass extends Super {
public void NoParametersMethod(){
System.out.println("subClacc Method....");
}
}
class override{
public static void main(String[] args) {
subClass sub = new subClass();
sub.NoParametersMethod();
}
}
重载(overload)
继承了父类的同名有參函数:当子类继承了父类的一个同名参数,且方法参数表不同,则称为重载,通过方法重载,子类可以重新实现父类的某些方法,使其具有自己的特征
class Super{
public void WithParametersMethod(int a){
System.out.println("Super Method:"+a);
}
}
class subClass extends Super {
public void WithParametersMethod(int a,int b){
System.out.println("subClacc Method:"+a+","+b);
}
}
class overload{
public static void main(String[] args) {
subClass sub = new subClass();
sub.WithParametersMethod(0);
sub.WithParametersMethod(1,2);
}
}
重写(overwrite)
当前类的同名方法:通过方法重写,一个类中可以有多个具有相同名字的方法
class Curr{
public void fun(int i) {
System.out.println("int");
}
public void fun(int i,String s){
System.out.println("int,String");
}
public void fun(String s,int i){
System.out.println("String,int");
}
}
class override{
public static void main(String[] args) {
Curr curr = new Curr();
curr.fun(0);
curr.fun(0, "");
curr.fun("", 0);
}
}