IOS9新特性之泛型

2016-01-15  本文已影响0人  Leessang丶


.苹果为什么推出泛型:

泛型好处:

1.迎合swift

2.提高代码规范,一看便知是什么类型

泛型作用:

1.限制类型(主要是限制集合中是什么类型)

2.从集合中取出来,可以使用点语法,不使用泛型,不能使用点语法.

泛型格式:

声明泛型格式:在声明类型的后面<类型>

@interfacePerson :NSObject

@property(nonatomic,strong) ObjectType language;

ObjectType就是指定的类型

定义泛型格式:在使用类型后面<类型>

ObjectType = NSString *

@property(nonatomic,strong)NSMutableArray *arr;

注意点:泛型仅仅报警告,并不是编译错误.

集合取出来类型都是id,id不能使用点语法.

数组里不能传入nil,真的会报错(运行).

疑问:为什么集合可以使用泛型.

并不是任何系统类型,都可以使用泛型,一般是集合(NSSet,字典,数组)

字典使用泛型格式:NSDictionary

@property(nonatomic,strong)NSDictionary *name;

泛型开发中使用场景(需求):声明类的时候不确定,使用类型创建对象才确定,就可以使用泛型

比如有个人,在声明这个Person类,并不知道会哪些编程语言(iOS,Java),在创建这个人类的时候,才确定他会什么.

自定义泛型?在声明自定义类的时候,声明泛型,在使用自定义类的时候,定义泛型

//创建一个人,java

Person *p1 = [[Personalloc]init];

表示这个人的language属性只能是java

p1.language= java;

上一篇下一篇

猜你喜欢

热点阅读