是否在目标C中公开iVar会破坏封装的目的?

时间:2012-10-12 18:15:16

标签: objective-c oop

在目标C中公开iVar是否会破坏封装的目的?

@interface SampleClass{
@public
int totalRecords;
}

1 个答案:

答案 0 :(得分:4)

简而言之,是的。

直接访问ivars意味着当SampmleClass被读取或写入时,totalRecords的子类或未来版本无法实现任何类型的自定义行为。

这就是为什么访问对象状态是通过各种方法,但是在类本身的实现中(并且,即使这样,它主要通过方法)。