日期:2014-05-19  浏览次数:20660 次

类里的一个属性设置成private加上get/set方法和直接设置成public有什么区别吗
赋值和取值得到的效果不是都一样?

------解决方案--------------------
一般来说,get/set方法都是比较简单的,但是get/set方法中是可以写逻辑。
如果写成public,那任何人都可以给其赋值,没有安全性了。
一个简单的例子,年龄age,如果是public,那可以给其赋值-100,2000等等都是合法的。
如果在set方法中,可以避免出现这种情况。
------解决方案--------------------
探讨
一般来说,get/set方法都是比较简单的,但是get/set方法中是可以写逻辑。
如果写成public,那任何人都可以给其赋值,没有安全性了。
一个简单的例子,年龄age,如果是public,那可以给其赋值-100,2000等等都是合法的。
如果在set方法中,可以避免出现这种情况。

------解决方案--------------------
这个其实是一个设计模式, 从安全的角度想就应该把属性设置成私有,其实没有多大区别吧