我注意到苹果的很多界面都使用@private
在它们的实例变量声明之前。这有什么好的设计理由吗?我应该这样做吗?
私有实例变量用于将接口与实现分开。在 Objective-C 中,由于类声明must显示所有实例变量,需要有一种方法来防止子类访问属于内部实现的一部分。否则,其他程序员可能会编写依赖于这些内部变量的代码,这将使类设计者无法在不破坏现有代码的情况下对类内部进行更改。
从另一个角度来看,实例变量是not标记为私有的是与子类程序员签订的合同的一部分,而标记为私有的则不是。
这意味着实例变量通常应标记为私有,以便只能通过其访问器方法来访问它们(如果有的话)。否则,有人可以轻松地编写您的类的子类,并简单地创建一个访问器来将任何实例变量公开。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)