我正在努力完成以下任务:
创建一个至少具有属性名称的Person。 创建时,对象处于只读模式 (只允许吸气剂)。 通过使用需要密码的解锁方法,对象进入读/写状态。 重要的是,编译器检查对象是否正确使用(取决于当前模式)。 不要使用标记 只读对象不能是可复制的。
我想我可以做最后一个,但不知道如何进行编译器检查。 任何提示?
答案 0 :(得分:1)
泛型会像这样有用:
类InternalPerson
扩展名为字段的PublicPerson
。 InternalPerson
有一个名字的setter,但PublicPerson
只有getter。通常你在PublicPerson
上操作,但解锁方法会为你提供InternalPerson
对象。
不太安全,因为你总是可以将PublicPerson
投射到InternalPerson
,但也可能足够考试?