欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java重寫和重載覆蓋

林國瑞1年前6瀏覽0評論

Java中的方法重寫和方法重載是非常常見的概念。它們都涉及到方法的重復使用和改變,但是它們的實現方式以及使用場景是有所不同的。

方法重載

public class OverloadDemo{
public void print(int i){
System.out.println("Printing integer: " + i);
}
public void print(String s){
System.out.println("Printing string: " + s);
}
public void print(double d){
System.out.println("Printing double: " + d);
}
}
public static void main(String[] args) {
OverloadDemo overloadDemo = new OverloadDemo();
overloadDemo.print(10);
overloadDemo.print("Hello, World!");
overloadDemo.print(1.234);
}

方法重載是指在同一個類中,方法名稱相同但參數類型或數量不同的情況。上面的代碼中就展示了方法重載的例子。OverloadDemo類中定義了三個print方法,分別用于打印整數、字符串和浮點數。在主方法中,我們通過傳遞不同類型的參數,調用了不同的print方法。

方法重載的跟具體參數相關,所以重載方法可以返回不同類型的值。

方法重寫

public class Parent {
public void print() {
System.out.println("I'm the parent class");
}
}
public class Child extends Parent {
public void print() {
System.out.println("I'm the child class");
}
}
public static void main(String[] args) {
Parent parent = new Parent();
Child child = new Child();
parent.print();
child.print();
}

方法重寫是指在子類中定義了一個與父類中同名稱、同參數列表的方法,用來覆蓋父類中的方法。上面的代碼就是方法重寫的一個例子。Parent類中定義了一個print方法,在Child類中重寫了這個方法。

當程序在運行時調用Child類的print方法時,執行的是Child類中的方法,而不是Parent類中的方法。這就體現了方法的覆蓋。方法重寫還有一個特點,就是父類方法返回值類型和子類方法返回值類型可以不同,但是子類方法的返回值類型必須是父類方法返回值類型的子類型。

總結:Java中,方法重載和方法重寫都是方法的復用方式,但是它們的實現方式和使用場景是不同的。方法重載適用于可以使用不同的參數實現同一種功能的情況,而方法重寫則適用于父類與子類之間,子類需要實現自己的方法來覆蓋父類的實現細節的情況。