1.Ios9 新特性---泛型
--1.在集合类数据中 ,直接索引出存储的某一对象调用更方便
规定该集合类的存储数据类型
直接调用方法更便利
--2.动态绑定属性类型
声明该对象持有某一泛型,并将该泛型,用作某属性类型,这样的设计优于id这种动态数据类型
声明某一变量为泛型
动态绑定对象的属性类型
2.泛型的协变和逆变
--1.协变 利用 __covariant 关键字 修饰泛型
既<__covariant ObjectType>
__covariant 协变 关键字 用于泛型数据强转类型 可以向上强转,子类可以转成父类
声明泛型后,同类型指针相互赋值,但是其泛型指针指向对象不同会报出警告
这时,由于Dog 继承于Pet 所以可以 通过协变关键字 __covariant 进行子类向父类的协变
通过 __covariant 关键字解决类似问题--2. __contravariant 逆变关键字 用于泛型数据强转类型 可以向下强转,父类可以转成子类
使用同理
网友评论