//聯(lián)系人:石虎QQ: 1224614774昵稱:嗡嘛呢叭咪哄
一、NS_UNAVAILABLE
用來修飾所有的方法,表示這個類的這個方法是不可用的。
一個很好的用法就是配合上面的NS_DESIGNATED_INITIALIZER修飾符。因為父類的designated initializer必須在子類實現(xiàn),而如果子類只希望有另一種designated initializer存在,就可以把父類的designated initializer申明為NS_UNAVAILABLE,這樣就不用去實現(xiàn),也避免出現(xiàn)多個init方法。
二、NS_REQUIRES_SUPER
用來修飾所有方法,表示子類override父類的方法時,必須在方法內部調用super的這個方法。
如果子類真的不想去調用super用NS_REQUIRES_SUPER修飾的方法,又不想出現(xiàn)警告,那么可以用下面的方式處理
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wobjc-missing-super-calls"
方法實現(xiàn)
#pragma clang diagnostic pop
三、無修飾
如果是init方法,那么這個init方法就是convenience initializer。