看板java
标 题Re: [问题] setXXX
发信站月光海洋BBS (Wed Jul 19 02:10:58 2006)
转信站ptt!ctu-reader!news.nctu!mobbs
set跟get有对物件下命令这层意义在
并不单单只是存取物件这麽简单
而是要让往後的使用者
容易了解某个方法到底在做些什麽
虽然没有硬性规定 但为了延展性着想
遵守命名规则还是比较好的
※ [email protected] (大口小口吃炒饭) 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