好處
1、類調(diào)用者對類的使用成本進(jìn)一步降低。多態(tài)只需要知道對象具有某個方法。
封裝是讓類的調(diào)用者不需要知道類的實現(xiàn)細(xì)節(jié)。
多態(tài)能讓類的調(diào)用者連這個類的類型是什么都不必知道, 只需要知道這個對象具有某個方法即可。
2、可擴展能力更強,如果要新增一種新的形狀,使用多態(tài)的方式代碼改動成本也比較低。
對于類的調(diào)用者來說(drawShapes方法), 只要創(chuàng)建一個新類的實例就可以了, 改動成本很低。
實例
class Cycle {
private String name = "Cycle";
public static void travel(Cycle c) {
System.out.println("Cycle.ride()" + c);
}
public String toString() {
return this.name;
}
}
class Unicycle extends Cycle {
private String name = "Unicycle";
public String toString() {
return this.name;
}
}
class Bicycle extends Cycle {
private String name = "Bicycle";
public String toString() {
return this.name;
}
}
class Tricycle extends Cycle {
private String name = "Tricycle";
public String toString() {
return this.name;
}
}
public class Demo1 {
public static void ride(Cycle c) {
c.travel(c);
}
public static void main(String[] args) {
Unicycle unicycle = new Unicycle();
Bicycle bicycle = new Bicycle();
Tricycle tricycle = new Tricycle();
ride(unicycle);
ride(bicycle);
ride(tricycle);
}
}
以上就是java多態(tài)的好處,希望對大家有所幫助。更多關(guān)于“java培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。