iOS 修饰符~NS_DESIGNATED_INITIALIZER

//联系人:石虎QQ: 1224614774昵称:嗡嘛呢叭咪哄

一、NS_DESIGNATED_INITIALIZER

用来修饰init方法,被修饰的方法称为designated initializer;没有被这个修饰的init方法称为convenience initializer

1.designated initializer必须调用父类的designated initializer(最终指向也会有警告)

2.convenience initializer最终必须指向一个designated initializer

3.有designated initializer的类必须实现父类的designated initializer方法

二、补充点

1.继承性,当子类里面没有其他的init方法时,继承父类的designated initializer;如果子类有其他的init方法,则父类的designated initializer方法都变成了convenience initializer

2.NSCoding的initWithCoder:是一个designated initializer方法

谢谢!!!

你可能感兴趣的