我想请问关于封装的问题
java中使用private封装属性,可是在另一个方法中使用输出的时候明明输出语句中没有成员变量只有对象名.getABC。可是确输出了重新赋值的成员变量,有点钻牛角尖。请问大家关于封装是不是说要调用封装的信息时候,重新赋值或者输出不能直接在代码中出现直接的成员变量名,而是必须得使用getter和setter进行调用方法?是这个意思吗?如果不对,请大神们改正
hy_wang
浏览 1569回答 3
3回答
-
精慕门9254224
private 修饰属性用于保护数据,getter 和setter 只是对外暴露的可以访问到数据的方法而已,如果该数据不希望外界赋值,可以不设置setter 方法的,如果该数据不希望外界得到也可以不设置getter 方法,如果该数据的设置有一些条件的话,可以在setter 方法中设定条件!比如幼儿园收小朋友,只有小于六岁的儿童才可以进幼儿园,就可以在setter 里加入age 小于等于6才能设定!
-
梦影剑魂
对属性的封装就是让其他类不能对该类的成员变量直接赋值,只能通过该对象的getter和setter方法,从而保证成员变量的安全性。个人理解
打开App,查看更多内容