iOS 修飾符~ NS_UNAVAILABLE、NS_REQUIRES_SUPER

//聯(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。

謝謝!!!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容