此@interface部分为类扩展(extension)。

其被设计出来就是为了解决两个问题的

其一,定义类私有方法的地方。

其二,实现public readonly,private readwrite的property(意思是在h头文件中定义一个属性对外是readonly的,但在类的内部希望是可读写的,所以可以在m源文件中的@interface部分重新定义此属性为readwrite,此时此属性对外是只读的,对内是读写的)。

此外,也可在此部分申明变量和属性,但申明的变量,属性和方法均为私有的,只能够被当前类访问,相当于private。

如有你有public 和 private 的概念, 你可以理解为:  .h 文件声明的@property ,是公共的,是可以被其他的.m 文件访问的; 而 在.m文件中声明的@property,是私有的, 只能在该.m文件中使用。

再进一步想想,也容易理解。

因为 .h 文件可以被其他.m 文件 #import。 自然就可以被其他.m文件访问; 而在.m 文件中所声明的,其实就是一个 static的 变量或方法,自然不能被其他文件访问。

转载于:https://www.cnblogs.com/xiaohaoweiye/p/3892218.html

iOS中,在类的源文件(.m)中,@interface部分的作用?相关推荐

  1. spring@Autowired的对象为null,非容器中的类如何调用容器中的类

    1.问题描述 我们平时使用@Autowired注入对象时,一般被注入的类都带有@Coponent.@Controller.@Service .@repository等注解才可以.注入类和被注入类都被s ...

  2. java中String类是什么_Java中字符串的学习(一)String类的概述及常见方法使用

    转载请注明出处http://www.cnblogs.com/devtrees/p/4347079.html (拓展:Api:编程语言对外给我们提供的应用程序接口.) 一.概述: 我们平时上网发帖,帖子 ...

  3. java中thread类定义在哪个包中,Thread类位于下列哪个包中?()A、javA、ioB、javA、langC、j......

    System和Math类在哪个包中_______.A.java.ioB.java.langC.java.awtD.java.util ObjectInputStream和ObjectOutputStr ...

  4. Spring Boot中普通类获取Spring容器中的Bean

    我们知道如果我们要在一个类使用spring提供的bean对象,我们需要把这个类注入到spring容器中,交给spring容器进行管理,但是在实际当中,我们往往会碰到在一个普通的Java类中,自己动手n ...

  5. java中String类是什么_Java中的String类

    /* String类用于描述字符串事物的 那么它就提供了多个方法对字符串进行操作 方法都会用,字符串这块就结束了 常见的操作有哪些? "abcd" 它应该具备什么功能,我们才能更好 ...

  6. 面向对象和面向过程,python中的类class,python中程序的入口——main方法,

    1.程序入口,让main显现出来: print(__name__)#__name___是模块中的隐藏字段,当前模块运行的函数名 if __name__ == __main__ __main__() # ...

  7. java中string类面试题_java中String类的面试题大全含答案

    1.下面程序的运行结果是()(选择一项) String str1="hello"; String str2=new String("hello"); Syste ...

  8. Android 引用模块中的类,解决Android项目中找不到Module中的封装类或引用的第三方类库...

    在日常开发中,现在越来越流行模块化开发,这就需要将项目分成不同的Module进行同时开发,最后在app层进行整合调用,但是不少开发人员都因为在build中添加关联代码,而找不到Module中封装的方法 ...

  9. java语言中的类可以_java 语言中的类

    类 一.类 类是具有相同性质的一类事物的总称, 它是一个抽象的概念. 它封装了一类对象的状态和方法, 是创建对象的模板. 类的实现包括两部分: 类声明和类体 类的声明 类声明的基本格式为: [ 访问权 ...

最新文章

  1. wxpython有没有可视化设计_wxPython - GUI Builder工具( GUI Builder Tools)
  2. C++ 中 string earse 函数的使用
  3. ios 添加浮动效果_iOS实现拖拽View跟随手指浮动效果
  4. SELECT COUNT(*) 底层究竟干了啥么?
  5. 利用JavaScript写猜数字小游戏
  6. pb的webserver增加的方法发布后没有显示_震惊!!!Diboot 2.0.5 发布,让开发工作又快又爽...
  7. java rfb,github上开源的超轻量级人脸检测模型及github地址。
  8. AD20元件重叠绿色报错的解决方法,距离太近绿色报错
  9. anguar4 共享服务在多个组件中数据通信
  10. JavaEE学习05--cookiesession
  11. C#向一个Word文件中插入文字与图片
  12. PPT用宏插入不同背景图片
  13. 针对Sql Server中进行查询操作时提示“对象名无效”
  14. 本地测试dubbo远程调用找不到provider
  15. 计算机编程ebcdic码,EBCDIC和BCD码
  16. 关于vmware(CENTOS 7 )虚拟机NAT模式下连不上网的问题解决。
  17. 万用表检测驻极体话筒好坏
  18. java 获取包下的所有类,附完整源码和测试代码
  19. 【选择二极管钳位还是选用 TVS 保护?】
  20. Vue.js的通识必修

热门文章

  1. pap认证过程_PPP协议当中LCP协商过程详解和PAP认证原理介绍
  2. notepad批量删除html元素,Notepad++几个常用删除类正则表达式汇总(收藏)
  3. python调用sqlplus执行_python可以调用sqlplus吗?
  4. Expected one result (or null) to be returned by selectOne(), but found: 7
  5. css3仿天气风车旋转
  6. android 图片转base64内存变大了_开发者最喜爱的图片编码格式:opencv编码,解码,显示base64图片...
  7. php和mysql实现图书管理系统_0074 实现图书管理系统的登录、员工和菜单功能
  8. videoleap怎么导出本地_Pr导出视频时,如何调节视频文件大小?
  9. Java继承_深入理解Java继承、封装、多态的实现原理
  10. php如何递归算法,详细的介绍一下PHP递归算法_PHP教程