OC中的一些关键字

static、self 、super

static:

1、static可以修饰OC中所有的成员变量,有局部和全局之分;static还可以修饰方法

2、static修饰的对象的内存是由系统来管理的

3、static修饰的对象只能被初始化一次

self:

指当前类的对象本身,或者说是当前消息的接收者

super:

指父类的对象本身、向父类发送消息

switch和if

1、它们都是条件判断语句

2、switch只能处理整型、字符型、枚举类型(其实都是整型)的数据,if则没有这样的限制

3、switch的效率更高: if 语句通过一层层的逻辑判断来执行符合条件的语句;而swith可以通过(expresion)直接找到对应的case来执行。

@public、@protected、@private

1、@public:

由它声明的实例变量能在任何其他类中访问

2、@protected:

由它声明的实例变量可以在本类以及其子类中访问。系统默认的是@protected类型的。

3、@private:

由它声明的实例变量只能在本类中访问

#include、#import、@class

1、#include与#import功能一样,都是查找该类中的属性和方法;

2、#import可以防止#include具有的交叉导入的问题;

3、@class XX 只是告诉编译器 把XX作为类来处理,但并没有导入该类,所以编译效率更高一些。

nil、Nil、NULL

nil:指向一个对象的指针为空

Nil:指向一个类的指针为空

NULL:指向一个C类型的指针为空

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • nullable/_Nullable/__nullable nullable修饰属性,表示属性可为空,可将属值赋为...
    追沐阅读 4,383评论 0 0
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,899评论 18 399
  • 307、setValue:forKey和setObject:forKey的区别是什么? 答:1, setObjec...
    AlanGe阅读 5,484评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139
  • 步骤:CMSampleBufferRef --->CVImageBufferRef--->CGImageRef--...
    melodySung阅读 9,207评论 0 0