程序设计 选择题 较难 ★ 精品

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

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

题目
某系统要求编写一个 Student 类,将成员变量 score 设为 private,并提供 setScore(int s) 方法用于写入。要求:分数必须在 0 到 100 之间,否则拒绝写入并保持原值不变。初始 score 为 60。已知两次调用:第一次 setScore(150)(非法,拒绝),第二次 setScore(95)(合法,写入)。请问从封装设计原则的角度,下面哪个说法是正确的? A. 只需将 score 声明为 private 即算完成封装,setScore 方法可省略 B. setScore(150) 被拒绝说明封装失败,无法保护数据 C. 私有属性配合提供校验逻辑的公有写方法,才能实现真正的封装保护 D. 将 score 声明为 public 并在调用处自行判断合法性同样符合封装原则