在外部类中为什么可以直接访问内部类的私有成员?比如,root=root.next,这条语句出现在外部类的方法中,这里,root是定义在外部类中的一个内部类对象,而next是root对象的一个私有属性,为什么可以这样写?
2条回答 默认 最新
- threenewbee 2016-01-05 15:12关注
内部类是一个特例,相当于友元类(java本身没有友元这个概念)
从语法的角度来说,这样做是方便的。封装性主要是避免调用者随意操作对象的私有成员,调用他们不知道的代码引起问题。但是你定义了外部类,显然内部类也是你定义的,你肯定对自己的代码很了解,所以这里限制反倒是多余。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 ubuntu子系统密码忘记
- ¥15 保护模式-系统加载-段寄存器