跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

如何描述封装(Encapsulation)在保护对象内部状态与降低系统耦合度上的作用

封装的核心作用是保护对象内部状态并降低系统耦合度。通过将属性设为private并仅提供public方法访问,可在方法中加入校验、日志等逻辑;同时调用方仅依赖接口,内部实现变更不影响外部,二者是一体两面的统一效果。

封装的核心作用,是让对象自己管好自己的数据,同时让外部只通过约定好的方式和它打交道。

保护对象内部状态封装把属性设为private,切断外部对字段的直接读写。所有访问都必须走公开的方法(比如getXXX()和setXXX()),这样就能在方法里加校验、日志、触发逻辑——比如设置年龄时拒绝负数,修改余额前先验证密码。数据不会被意外或恶意篡改,状态始终处于可控范围内。

降低系统耦合度当一个类隐藏了内部实现,其他类就只能依赖它的公共接口,而不是它的字段或具体算法。这意味着:稿定在线PS PS软件网页版下载这个类内部换用新算法、新增缓存、改用数据库,只要接口不变,调用方完全不用改代码两个模块之间没有“知道对方怎么干活”的依赖,只有“约定好怎么说话”的契约修改一个类时,影响范围被天然限制在它自身,不会像多米诺骨牌一样波及整个系统两者其实是同一枚硬币的两面正是因为把状态藏起来、只留接口,才实现了保护;也正是因为只暴露接口,才切断了不必要的依赖。不是先有保护再有解耦,而是封装这一设计动作,同时达成了这两个效果。

相关文章