iOS 9 __kindof

id:

1.id在编译时不检查真实类型

2.id不能使用点语法

3.返回值,不会提示真实类型,容易出错

instancetype:

1.可以在编译时检查真实类型

2.但是,返回值,也不会提示真实类型,容易出错

3.__kindof

1.表示类或其子类对象

2.可以在编译时检查真实类型

3.返回值会提示真实类型

定义一个Person类


iOS 9 __kindof_第1张图片
方法和属性声明


id在编译时不检查真实类型


iOS 9 __kindof_第2张图片
id不能使用点语法


iOS 9 __kindof_第3张图片
4种返回值类型

你可能感兴趣的:(iOS 9 __kindof)