A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

日常练习的时候习惯写带参构造,这样创建对象的时候一条语句就可完成属性的初始化
那么问题来了
既然我把成员变量name设置为私有并提供了getter&setter,然后在set里加入了一些条件,要符合条件才能set
那么如果这时候我用generate生成一个带参构造,里面有对该变量初始化数据 this.name = name
结果就是,通过带参构造创建对象,就可以越过私有成员变量的条件判断了

这样岂不是..白弄了..是否带参构造和 私有成员变量应该是冲突的呢? 不能共存?

2 个回复

倒序浏览
怎么沉了
回复 使用道具 举报
构造器能通过形参 赋值给私有化的成员变量,提供了一种初始化方法 ,一般需要初始化的私有变量会放在构造器里,get.set方法是直接取值 无需私有化的量
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马