1、泛型:限制类型
-
泛型使用场景:
1.在集合(数组,字典,NSSet)中使用泛型比较常见.
2.当声明一个类,类里面的某些属性的类型不确定,这时候我们才使用泛型.
-
泛型书写规范
在类型后面定义泛型
@property (nonatomic, strong) NSMutableArray<NSString *> *datas;// 使用方法时能知道传入什么类型 self.datas addObject:<#(nonnull NSString *)#> // 可以直接使用点语法 self.datas[0].length@interface Language : NSObject @end @implementation Language @end @interface Java : Language @end @implementation Java @end @interface IOS : Language @end @implementation IOS @end // 声明泛型 @interface Person<ObjectType> : NSObject // 语言 @property (nonatomic) ObjectType language; ///* // id:任何对象都能传进来 // Language:在外面调用的时候,没有提示 // IOS* 以后只能传对象 // */ - (ObjectType)language; - (void)setLanguage:(ObjectType)language; @end -
泛型修饰:
只能修饰方法的调用.
-
泛型好处:
1.提高开发规范,减少程序员之间交流
2.通过集合取出来对象,直接当做泛型对象使用,可以直接使用点语法