程序设计 选择题 标准 ★ 精品

封装与访问修饰符 — 程序设计选择题

Java 程序设计(大学通用) 类与对象 AI 三重审校通过

题目
某 Java 类中属性 age 已声明为 private,类外代码执行 obj.age = -5; 时编译报错。若删除 private 改为默认访问权限,则该赋值语句可通过编译且 age 变为 -5。下列说法最准确的是: A. 用 private 修饰属性即完成了封装,编译报错已证明封装成功 B. 封装要求私有属性配套提供公有的 setAge(int a) 等存取方法,并在方法内校验数据合法性,仅加 private 而不提供存取方法不算完整封装 C. 只要不提供任何存取方法,私有属性就比提供存取方法更安全,封装程度更高 D. 只要在 setAge 方法中写一句 this.age = a; 不做任何校验,就等同于实现了完整封装