java类中为什么设置set和get方法操作属性
答案:2 悬赏:20 手机版
解决时间 2021-04-12 16:46
- 提问者网友:情歌越听越心酸
- 2021-04-12 07:47
java类中为什么设置set和get方法操作属性
最佳答案
- 五星知识达人网友:十年萤火照君眠
- 2021-04-12 09:21
因为java语言是面向对象的语言,因此将我们的对象进行的封装,封装成为了属性和方法,又因为我们的java是安全的,所以我们需要一般需要将设置为private ,因此不能直接访问我们的属性,所以我们需要提供对应的set和get方法,来给外部的类进行调用或者进行赋值。
全部回答
- 1楼网友:詩光轨車
- 2021-04-12 10:37
当然java中这样做有它的原因:
1 将数据与行为分离,也就是java的面向对象的概念。
对象就是属性+行为,封装就是把对象的私有属性封装起来,只有通过自己公开的行为去改变(获得)对象内部的私有属性信息,而那些public的方法正是面向其他对象的接口,只有通过接口去改变(获得)对象的私有属性
2 安全性 设想,你有一个person类代表一个人,person有一个char类型的sex字段表示性别,理论上,sex只接受两个值, 'm '和 'f ',但如果你把sex字段设为public,你很难限制你的用户只给它赋 'm '或 'f '值。将sex设为private,再用setsex()来设置性别,你就完全可以控制这种行为了。而且你还可以控制只能get不能set,或相反,但如果是public就不行了。别外有一点属性我们可能并不希望其他用户对我们的属性进行写操作,这个时候,可以直接不写setx方法。这就是只读属性了。
3 编码规范性 我们在设计类,或者作com组件时经常告诉其实coder,你只需要调用我的xx接口方法就可以了,内部我是怎么实现的,你不用管,如果面向特定的环境特定的时间段,直接将属性声明为public,让外部对象访问也未偿不可,没有面象对象思想时,我在写c语言程序时结构中的变量是可以随意被访问的,因为没有pulbic,private之分,现在我们是面向对象编程,我们需要在接口处作文章,而保护对象的私有属性,即安全性,只有通过对外公开的接口方法去访问在面向对象理论上认为是安全的。4 稳定性5 可扩展性6 便于维护
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯