Re: [問題] setXXX
set跟get有對物件下命令這層意義在
並不單單只是存取物件這麼簡單
而是要讓往後的使用者
容易了解某個方法到底在做些什麼
雖然沒有硬性規定 但為了延展性著想
遵守命名規則還是比較好的
※ cplusplus.bbs@ptt.cc (大口小口吃炒飯) wrote:
> ※ 引述《sioo (加油加油)》之銘言:
> : 請問一下,我發現在很多的API裡面,
> : 在建立物件時,都不直接使用建構子來建立物件,
> : 一些參數都要透過setXXX()的方法來給值,
> : 請問使用這種方法有什麼好處嗎?
> : 用建構子不是更方便嗎 謝謝...
> 如各位所說的,各有好壞吧
> 另外我想如果用constructor可以對必須給定的參數作強制輸入
> 畢竟參數不完全就不能呼叫constructor了,這樣在某些時候也可以省去一點麻煩
> 如果採用setter可能參數還不完全就呼叫某些動作必須多出很多檢查動作吧
> 另外一個情況是,如果class內的某些資訊必須在輸入完全參數後才計算得出來,
> 用constructor一次得到需要的參數應該也是比較方便的
> setter/getter的好處我想其他大大也講了,
> 另外,會用setter/getter也可能是因為要拿去當javabean用吧~
> ----------------------------------------------
> 不過我覺得用 void XXX(Type)/ Type XXX() 這樣好像也不錯?
> 像是
> Rectangle r=new Rectangle();
> r.height(10); //set height to 10
> r.width(5); //set width to 5
> ....
> r.height(); //return 10
> r.width(); //return 5
> 可以少打字 set/get XD
> 不過好像違反的一般java內method以動詞開頭的命名方式
--
◣ ███ ███ ☆ Post by Pistachi
◢█ ▉▉█ █▇█ ★ From 220-134-160-26.HINET-IP.hinet.net
◥█◤ ﹉ ﹍ ﹋ 月光海洋BBS 《mobbs.stut.edu.tw》 163.26.220.130
討論串 (同標題文章)
java 近期熱門文章
PTT數位生活區 即時熱門文章