【发布时间】:2011-10-05 09:35:26
【问题描述】:
我正在尝试了解信息隐藏的原理。假设我有一个车辆类,其中包含诸如 getSpeed、setSpeed、getEngine、setEngine、getVIN、setVIN 等方法。为了强制隐藏信息,我不想让客户端类能够 setVIN,因为车辆只有一个 VIN (我可能错了)。我对如何让这个类应用信息隐藏有点困惑。我不想将 setVIN 设为私有。但是您如何设置一次 VIN 并且之后不允许再次设置呢?还是我应该那样做?
【问题讨论】:
-
就个人而言,我会使用使用构造函数设置的最终字段。这样,每个字段都必须设置一次且仅一次。
标签: java oop information-hiding