Self Encapsulate Field(自封装字段)

本文探讨了在Java中自封装字段(即使用访问函数而非直接访问字段)的动机,包括两种不同观点的阐述。作者倾向于根据实际需要在直接访问和间接访问之间灵活切换,并给出了进行字段封装的步骤:创建访问函数、替换所有引用、声明字段为private,以及编译测试确保正确性。文章还提供了一个重构示例。
摘要由CSDN通过智能技术生成

动机

在“字段访问方式”这个问题上,存在两种截然不同的观点:其中一派认为,在该变量定义所在的类中,你可以自由访问它:另一派认为,即使在这个类中你也应该只使用访问函数间接访问。两派之间的争论可以说是如火如荼。

面临选择时,我总是做两手准备。通常情况下我会很乐意按照团队中其他人的意愿来做。就我自己而言,我比较喜欢先使用直接访问方式,直到这种方式给我带来麻烦为止,此时我就会转而使用间接访问方式。重构给了我改变主意的自由。

做法

  1. 为待封装字段建立取值/设值函数。
  2. 找出该字段的所有引用点,将它们全部改为调用取值/设值函数。
  3. 将该字段声明为private。
  4. 复查,确保找出所有引用点。
  5. 编译,测试。

范例

class IntRange {
   
	private int _low, int _high;
	
	IntRange
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值