類和對象系列教材 (二)- 什麼是 Java的 繼承 ?
在LOL中,武器是物品的一種,也是有名稱和價格的
所以在設計類的時候,可以讓武器繼承物品,從而繼承名稱和價格屬性
步驟1:物品類Item
步驟2:武器類Weapon(不繼承)
步驟3:武器類Weapon(繼承類Item)
步驟 1 : 物品類Item
物品類Item 有屬性 name,price
public class Item {
String name;
int price;
}
步驟 2 : 武器類Weapon(不繼承)
武器類: Weapon不繼承Item的寫法
獨立設計 name和price屬性
同時多了一個屬性 damage 攻擊力
public class Weapon{
String name;
int price;
int damage; //攻擊力
}
步驟 3 : 武器類Weapon(繼承類Item)
這一次Weapon繼承Item
雖然Weapon自己沒有設計name和price,但是通過繼承Item類,也具備了name和price屬性
public class Weapon extends Item{
int damage; //攻擊力
public static void main(String[] args) {
Weapon infinityEdge = new Weapon();
infinityEdge.damage = 65; //damage屬性在類Weapon中新設計的
infinityEdge.name = "無盡之刃";//name屬性,是從Item中繼承來的,就不需要重複設計了
infinityEdge.price = 3600;
}
}