1.@private
只能当前类的实例对象可以访问,它的子类也不能访问。
2.@protected(oc默认权限)
不能在类或者类的子类之外的函数或者对象中访问。只能被当前类的对象访问或者子类的对象也可以直接访问,不需要经过父类的方法去访问.
3.@public
任何地方都可以被访问.
4@package
这个一般用的比较少,很多教程上也没有涉及这方面的知识.用@package修饰的字段,只能被当前类直接访问, 它的子类只能通过父类的方法去访问而不能直接访问,这一点和@protected是有区别的。如果看iOS官方文档会发现它很多实例变量就是这么修饰的,如果你继承了这个类,也只能用父类的方法去访问而不能直接访问.(类似:加入父类有个属性title,子类可以通过self.title访问该属性,但是不能通过_title去访问).