为什么出现instancetype与id类型?
便于程序的扩展,如果把类型写死,就不具有扩展性。
instancetype 与id 是类方法的返回的对象的类型。
其中instancetype: 自动识别当前是哪个类(有可能是子类)在调用,
就会变成对应类的对象。假如b类继承与a类,b类调用了a类的类方法,用的是id类型,那么b类返回的将是父类的类型,程序出错,id类型不能用点语法,而instancetype 可以。
- id类型可以调用任意类型的方法,不利于编译器检查错误。
为什么出现instancetype与id类型?
便于程序的扩展,如果把类型写死,就不具有扩展性。
instancetype 与id 是类方法的返回的对象的类型。
其中instancetype: 自动识别当前是哪个类(有可能是子类)在调用,
就会变成对应类的对象。
假如b类继承与a类,b类调用了a类的类方法,用的是id类型,那么b类返回的将是父类的类型,程序出错,id类型不能用点语法,而instancetype 可以。