java中重載,繼續,重寫和多態的差別。本站提示廣大學習愛好者:(java中重載,繼續,重寫和多態的差別)文章只能為提供參考,不一定能成為您想要的結果。以下是java中重載,繼續,重寫和多態的差別正文
重載,繼續,重寫和多態的差別:
1)繼續是子類取得父類的成員。
2)重寫是繼續後從新完成父類的辦法。
3)重載是在一個類裡一系列參數分歧名字雷同的辦法。
4)多態則是為了不在父類裡年夜量重載惹起代碼癡肥且難於保護。
網上看到一個風趣的說法是:繼續是子類應用父類的辦法,而多態則是父類應用子類的辦法。
上面的例子包括了這四種完成:
class Triangle extends Shape {
public int getSides() {
return 3;
}
}
class Rectangle extends Shape {
public int getSides(int i) {
return i;
}
}
public class Shape {
public boolean isSharp(){
return true;
}
public int getSides(){
return 0 ;
}
public int getSides(Triangle tri){
return 3 ;
}
public int getSides(Rectangle rec){
return 4 ;
}
public static void main(String[] args) {
Triangle tri = new Triangle();
System.out.println(“Triangle is a type of sharp? ” + tri.isSharp());
Shape shape = new Triangle();
System.out.println(“My shape has ” + shape.getSides() + ” sides.”);
}
}
白色是重載,綠色是重寫,藍色是繼續,粉紅是多態
留意Triangle類的辦法是重寫,而Rectangle類的辦法是重載。
比擬白色的和粉紅的部門便可以發明多態對重載的長處:假如用重載,則在父類裡要對應每個子類都重載一個獲得邊數的辦法;假如用多態,則父類只供給獲得邊數的接口,至於獲得哪一個外形的邊數,如何獲得,在子類裡各自完成(重寫)。