isa和superclass的总结

2018-12-28  本文已影响0人  dandelionYD

本文所运行的环境是自己编译好的:配置运行objc4-750和使用
本文所写的项目详见:OCBasicDemo

我们从前面的2节,应该大致对isa、superclass应该有了大致的了解了.

下面是我从网络摘的图:


image

示例:

#import <Foundation/Foundation.h>
@interface NSObject()
+ (void)test;
@end

@implementation NSObject (Test)
- (void)test
{
   NSLog(@"test被调用啦%p", self);
}
@end


@interface Person : NSObject
+ (void)test;
@end

@implementation Person
@end


int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSLog(@"%p", [NSObject class]);//0x100b14140
        NSLog(@"%p", [Person class]);  //0x1000011c0
      
        [NSObject test];//test被调用啦0x100b14140
        [Person test];//test被调用啦0x1000011c0
    }
    return 0;
}

分析:

友情链接:

上一篇 下一篇

猜你喜欢

热点阅读