采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,我们平时定义普通的java类,属性都是私有的,然后是public的get/set方法,那这都算逸出吗? 如果是逸出,我感觉没什么风险啊。如本例中,我们只是把新new出来的对象里的map给remove了一个key。再new其它对象时,map依然是周一到周四啊。 这不是日常编程中很常见的使用吗,怎么成了逸出风险了。 求解答,谢谢。
如果是逸出,那么必须是“本不想让外界拿到,却不慎被外界拿到了”。平时的get/set,我们本身就是想让外界拿到,所以不算逸出。同理,如果我们的本意就是希望外界可以获取到new出来的对象里的map,那么就不算逸出,但是本例中,代码编写者不希望这个map被外界修改,那么这里就属于逸出,所以直接返回map对象是有风险的,你可以看下后面的小节对这个问题的修复方案。
你用到setget就要创建啊,你既然你创建了,肯定就是想让别人访问。
登录后可查看更多问答,登录/注册
完整的并发知识网络+丰富的工作内容分享+50余道并发高频面试题
2.3k 26
1.3k 12
1.4k 12
2.9k 12
1.5k 11
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号