首页  >  问答  >  正文

objective-c - iOS通过property声明的变量的作用域??

我们可以通过.h中使用property关键字声明变量,但是他的作用域是什么?,还可以在.m中的扩展接口声明变量。还可以在@implementation中声明变量,他们的作用域分别是什么?从使用中看,.h中通过property声明的变量应该是public,.m中@interface声明的是protected。是这样的吗?求解惑。

巴扎黑巴扎黑2701 天前349

全部回复(1)我来回复

  • 天蓬老师

    天蓬老师2017-05-02 09:28:52

    1.OC中关键看你是否取得到变量的声明吧,取得到就可用,效果上看,在.h中就是public,在.m中就是private,一般你不会import .m文件中。.m中的@interface实际就是extension,只是写在了.m文件中,会自动提供settergetter的实现。
    2、因为有runtime的存在,private没有意义,我觉得不要用这种思维看待OC吧。

    回复
    0
  • 取消回复