一、方法重載:
1.方法名相同
2.參數項不同
3.與通路修飾符和傳回值無關
4.發生在同一個類中
例子:
public class Test {
public int a=0;
public int b=0;
public void play() {
System.out.println("a的值為:"+a);
}
public void play(int a) {
System.out.println("a的值為:"+a);
}
public void play(int a, int b) {
System.out.println("a的值為:"+a+",b的值為:"+b);
}
public static void main(String[] args) {
Test test = new Test();
test.play();
test.play(3);
test.play(5, 6);
}
}
輸出:
a的值為:0
a的值為:3
a的值為:5,b的值為:6
二、方法重寫:
1.發生在父類和子類之間
2.方法名相同
3.參數清單相同
4.傳回值類型相同或者是其子類
5.通路權限不能嚴于父類
例子:
public class F {
public void play() {
System.out.println("這是父類!");
}
}
public class S extends F {
@Override
public void play() {
System.out.println("子類重寫了父類!");
}
public static void main(String[] args) {
S s = new S();
s.play();
}
}
輸出:
子類重寫了父類!