封装是面向对象三大特性(封装、继承、多态)里最先要建立的一个习惯。前几讲我们已经能用 `class` 定义类、用构造方法初始化对象、用 `this` 区分字段和参数。但如果你把类里的字段都设成 `public`,外部代码就能随意篡改对象状态——账户余额可以被改成负数,年龄可以被设成 -100。这一讲就来解决这个问题:用访问修饰符把字段"藏起来",再通过受控的方法对外开放。 ## 为什么需要封装 **封装(Encapsulation)**指的是把对象的属性(字段)隐藏在类内部,只通过公开的方法让外部访问和修改,方法内部可以加校验逻辑。可以把一个类比作一台自动售货机:你不能直接打开机箱去拿货…