常見iOS面試題 之 怎么判斷一個類是否遵循某個協議


答案:

使用方法conformsToProtocol. 

調用例子: BOOL isConform = [Student conformsToProtocol:@protocol(UIScrollViewDelegate)];

或者:

Student* student =[[Student alloc] init];

BOOL isConform = [student conformsToProtocol:@protocol(UIScrollViewDelegate)];

都可以.

這個方法既是NSObject的一個類方法,也是定義在NSObject Protocol中的一個方法.

方法定義:

+ (BOOL)conformsToProtocol:(Protocol *)protocol;

具體的說明直接去看SDK文檔就可以了.

 

擴散一下,一般實際應用中遇到的更多的是一個類的實例是否能夠響應某個方法,一般用

- (BOOL)respondsToSelector:(SEL)aSelector;

就可以了;

如果只是想知道某個類是否響應其中一個方法,則用

+ (BOOL)instancesRespondToSelector:(SEL)aSelector;.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM