Objective-C中isMemberOfClass使用案例
Objective-C中isMemberOfClass使用案例是本文要介紹的內(nèi)容,主要是來學習isMemberOfClass使用舉例isKindOfClass的應用,來看詳細內(nèi)容。
isMemberOfClass方法是來確定對象是否是某一個類的成員。在下一個任務(wù)中,我們使用這個方法來驗證一個特定的對象是否是一個特定的類成員
例子:
- #import <Foundation/Foundation.h>
- #import <stdio.h>
- @interface Class1 : NSObject
- {
- }
- -(void)print;
- @end
- @implementation Class1
- -(void)print
- {
- printf("This is Class1 .\n");
- }
- @end
- @interface Class2 : NSObject
- {
- }
- -(void)prinf;
- @end
- @implementation Class2
- -(void)prinf
- {
- printf("This is Class2.\n");
- }
- @end
- int main (int argc, const char * argv[]) {
- // insert code here...
- Class1 *c1=[Class1 new];
- Class2 *c2=[Class2 new];
- if ([c1 isMemberOfClass:[Class1 class]]==YES) {
- printf("c1 is Member of Class1 !\n\n");
- }
- if ([c2 isMemberOfClass:[Class2 class]]==YES) {
- printf("c2 is Member of Class2 !\n\n");
- }
- return 0;
- }
輸出結(jié)果:
- c1 is Member of Class1 !
- c2 is Member of Class2 !
isKindOfClass我們也可以使用isKindOfClass來檢查一個對象是否是一個類的成員。isMemberOfClass和isKindOfClass之間區(qū)別是:我們可以使用isKindOfClass來確定一個對象是否是一個類的成員,或者是派生自該類的成員。
例如:我們已經(jīng)成NSObject派生了自己的類,isMemberOfClass不能檢測任何的類都是基于NSObject類這一事實,而isKindOfClass可以。
應用舉例:
- import <Foundation/Foundation.h>
- #import <stdio.h>
- @interface Class1 : NSObject
- {
- }
- -(void)print;
- @end
- @implementation Class1
- -(void)print
- {
- printf("This is Class 1.\n");
- }
- @end
- int main (int argc, const char * argv[]) {
- // insert code here...
- Class1 *c1=[Class1 new];
- if ([c1 isKindOfClass: [NSObject class]]==YES) {
- printf("c1 is a kind of NSObject . \n");
- }
- return 0;
- }
輸出結(jié)果;
- c1 is a kind of NSObject .
小結(jié):Objective-C中isMemberOfClass使用案例的內(nèi)容介紹完了,希望通過本文的學習能對你有所幫助!