发布于2026-05-22 阅读(0)
扫一扫,手机访问
在面向对象编程中,有一个看似简单却至关重要的重构动作:将类的公共(public)字段封装起来。具体来说,就是把字段改为私有(private),并为其提供公共的获取(getter)和设置(setter)方法。这步操作不改变程序的功能,却能从根本上提升代码的安全性和可控性。

把 public 字段改成 private,再配上 get/set 方法,是提升变量安全性的最直接、最基础的重构动作。它不改变功能,但能堵住外部随意读写带来的隐患。
将一个字段声明为 public,无异于将数据的大门完全敞开。这意味着任何外部代码都可以直接读取甚至随意修改它。这种“裸奔”状态会带来一系列问题:你无法对输入的值进行校验(比如给年龄字段赋一个-5),也无法控制输出的内容(比如直接将密码明文返回),更无法在数据变更时触发任何关联的业务逻辑(比如账户余额变动时需要记录审计日志)。长此以往,类的内部状态很容易失控,一旦出错难以定位,修改时更是牵一发而动全身。
封装字段并非简单地加上 private 关键字就万事大吉,关键在于实现“平滑过渡”,确保重构过程不影响现有功能。通常可以遵循以下步骤:
字段私有化只是第一步,真正的价值在于随后在 getter 和 setter 方法中注入的控制逻辑。这才是封装带来的强大威力:
将public字段改为private并添加getter/setter是提升安全性的最基础重构:可校验输入、脱敏输出、触发关联逻辑,防止状态失控;标准步骤为先加方法、切换调用、再改private,之后可在getter/setter中加入校验、脱敏、日志等控制逻辑。
不必等待大规模重构,在日常开发中,如果遇到以下几类字段,就应该立即考虑将其封装:
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8