id:
好處:可以調(diào)用任何對(duì)象方法
壞處:不能進(jìn)行編譯檢查
+ (id)person;
instancetype
好處:自動(dòng)識(shí)別當(dāng)前類的對(duì)象
壞處:不會(huì)提示返回的類型
+ (instancetype)person;
注:Xcode5之后才有instancetype,在之前一般用id嗤军,instancetype出現(xiàn)之后一般用instancetype
__kindof:表示當(dāng)前類或者它的子類
好處:提示返回的類型技肩,也不會(huì)出現(xiàn)提示類型不匹配的警告
+ (__kindof Person *)person;
開發(fā)中用得最多的是instancetype和__kindof撇吞。