--- tags: Java, constructor --- # Class: https://github.com/hryjosn/java_class_tutorial ## :memo: Class tutorial ##### 1. 類別 某人事物的設計藍圖,定義它的內部有哪些功能,哪些元素 類別中通常含有以下三個元素 1. 建構元 constructor 2. 資料成員 3. 函數成員 參見class_ex1.java ##### 2. 函式成員的多載 重點:函式名稱相同,傳入的參數型態或是數量不同 參見class_ex2.java ##### 3. 修飾子 public、private、protected的主要核心概念為權限,三者分別為不同等級的權限 1. 設定 Private 就只有類別內的成員可以存取該資料,以達到保護的作用 2. 設成 Public 外部的類別都可以存取該資料 3. protected 牽涉到extends,未來有機會再補充. 參見class_ex3.java ##### 4. 建構元(Constructor) 通常是用來對物件的資料成員做初始化(initialization),設定物件的初值 1. 建構元的名稱必須與其所屬之類別的類別名稱相同 2. 建構元不能有回傳值 3. 建構元在建立物件的時候會被自動呼叫 4. 建構元也可以多載 5. 建構元之間呼叫的方式用 this() 6. 建構元可省略,java會幫你建一個,但如果你有創造有參數的建構元,就一定要傳值進去否則會錯:因為Java就不會幫你自動建立建構元 參見class_ex4.java ##### 5. 類別函數與類別變數 視情況補充 --- > 注意:一個 Java 檔只能一個 public 類別喔,且必須跟檔名相同 !! --- ##### Exercise: 1. 定義三種角色職業 1. 弓箭手 (HP:50, Att:30, MP:10) 2. 狂戰士 (HP:90, Att:15, MP:5) 3. 魔法師 (HP:60, Att:40, MP:30) 2. 每個角色都要能夠 1. 攻擊 2. 詠唱(喊出自己的技能名稱) 3. 穿戴至少一項武器 3. 使用多載、修飾子、static