方法重載的定義是在同一個類中有多個相同方法名的方法,而他們的參數列表不同(參數的類型,個數,順序);方法覆蓋的定義是在子類中重寫父類中的方法,這個方法名相同,參數列表也相同(參數的類型,個數,順序),并且需要注意的是在子類中該方法的訪問權限不能比父類中該方法的訪問權限更嚴格(這個是規定)。
下面附個方法重載的例子:
class A{
public void print(){
System.out.println("打印無參數的方法");
}
public void print(String n){
System.out.println("打印有參數的方法");
}
}
public class Override {
public static void main(String[] args) {
A a = new A();
a.print();
a.print("n");
}
}
下面附運行結果:
下面附個方法覆蓋的例子:
class B{
public void print(){
System.out.println("打印父類的方法");
}
}
class C extends B{
public void print(){
System.out.println("打印子類的方法");
}
}
public class Override {
public static void main(String[] args) {
B b = new C();
C c = new C();
b.print();
c.print();
}
}
看一下運行結果:
