类型安全与数据封装 — 软件工程选择题
题目
某系统需表示“银行账户余额”,要求任何外部代码都不能直接修改余额数值,所有变更必须经由公开方法完成且方法内可加入业务校验。从类型安全与数据封装角度,余额字段与访问方式的最合理设计是( )
A. 将字段声明为 public,外部直接读写以减少方法调用开销
B. 将字段声明为 private,并提供公开的查询方法与受控的变更方法,在变更方法中校验
C. 将字段声明为 protected,允许任意子类与同包代码直接修改
D. 将字段声明为默认可见性(包级私有),同包代码可绕过校验直接赋值