Re: [問題] 新手繼承問題(非作業)

看板java作者 (憧)時間11年前 (2012/10/21 02:15), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串3/4 (看更多)
: : } : : public class test { : : /** : : * @param args : : */ : : public static void main(String[] args) { : : // TODO Auto-generated method stub : : Person P1=new Person("TWTRubiks",1100104105); : : Student S2=new Student("TWTRubiks",1100104105,100,100,60); : : // 上面好像一定要數入 "TWTRubiks",1100104105 ,因為繼承了,所以如 : : // 果不輸入會錯誤 : : P1.printPerson(); : : S2.printPerson(); : : } : : } : : 結果印出 : : 姓名:TWTRubiks : : 編號:1100104105 : : 總分:260 : : 平均:86 : : 我想問,如果以這題目來講,我這樣做算對嗎?! : : 因為我一直覺得我的Student S2=new Student("TWTRubiks",1100104105,100,100,60); : : 的"TWTRubiks",1100104105,是多寫的,不過不寫又不行 這個問題,我是覺得你沒有把overload和繼承這兩個東西搞清楚 你寫兩、三個同名但不同參數的method,然後不同的method print一些不同字串 然後想辦法去呼叫這三個方法,應該比較能體會為什麼你會有錯誤 另外,不是看到有錯誤就算了,請想辦法理解該錯誤代表的意義 : : 請各位大大幫我看看 : : 非功課,自己練習遇上的小問題 : : 建議可以把override的部份再看一次 : : 就知道為何只會出現分數,而沒有個人資料 : : : : 更多其他的物件設計建議 : : 請參考上一篇板友回文 : : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 1.165.195.39 : 推 TWTRubiks:哇~! 感謝大大~! 這本書是因為現在大二老師上課用的 10/20 22:09 : → TWTRubiks:另外,要怎麼樣決定要用public還是private 10/20 22:11 不只這兩種,還有(default)和protected 這個是物件導向的觀念,可以去翻書裡對於這部分的描述 看不懂的話可以去找別本書來對照他們的寫法 當你理解這三個關鍵字的意義後 就比較理解No大大想表達的東西了 至於怎麼採用,沒有標準答案 看你怎麼去取捨 設得範圍大的話,會有資安上的風險 設得範圍小的話,在程式實作上也會有些麻煩 : 推 TWTRubiks:我知道2個的差別~! 不過因為題目上沒規定(通常會寫) 10/20 22:13 : 推 TWTRubiks:所以我才自己亂設定,小弟剛學不到1個月,請多多包涵 10/20 22:17 : → cha122977:借問,我習慣用this.name而不用name,performance有差嗎 10/21 00:09 一般來說performance現在應該不是主要考慮的問題 除非你應用的領域很重視這部分 不過,不用this.name的話,你是要另外產生一個物件來呼叫嗎? 因為我剛學java的時候也有遇到這問題,結果是另外產生一個物件去呼叫 後來才改用this.name的寫法 所以比較好奇你說要呼叫name這個attribute是要怎麼呼叫的 : 推 TWTRubiks:this.name=name,是只這樣嗎?! 應該沒差吧 10/21 00:14 這應該算是繼承的部分,可以去翻一下書確認 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.126.66.40

10/21 02:26, , 1F
你講的應該是overload吧~@@
10/21 02:26, 1F

10/21 03:02, , 2F
真的...太久沒複習又搞混了,修一下
10/21 03:02, 2F
※ 編輯: AtarashiAko 來自: 120.126.66.40 (10/21 03:03)

10/21 16:52, , 3F
感謝解釋~! ^^
10/21 16:52, 3F
文章代碼(AID): #1GWkepbO (java)
文章代碼(AID): #1GWkepbO (java)