Override:子类重写父类的方法(重写要保证:函数名,返回值类型,参数类型,参数数量都相同),实现多态(编译时的多态)
//override
class Super{
int test (int i){
System.out.println("super sout");
return i;
}
}
class Sub extends Super{
int test(int i){
System.out.println("son sout");
return i;
}
}
public static void main(String[] args){
Super aSuper = new Sub();
aSuper.test();
}
overload:同一个类中有多个相同函数名但是参数类型与参数数量均不同的方法,程序运行时根据传入的参数数量与参数类型调用不同的方法(运行时的多态)
//overload
public class Test{
int test(int i){ return i; };
int test(int i,int j){ return i; };
float test(float f){ return f; };
}