runtime

1.     创建 一个person类, 有对象方法, 私有化方法

2.    在h 文件里面
- (void)eat;
//- (void)run:(NSInteger)metre;

3.    在m文件里面
-(void)eat{
    NSLog(@"吃吃吃吃");
}

-(void)run:(NSInteger)metre{
    NSLog(@"跑了%ld米", metre);
}


4.    使用这个person类:

    //   1. person *p = [[person alloc] init];
    //   2.
    person * p2 = objc_msgSend(objc_getClass("person"), sel_registerName("alloc"));
    p2 = objc_msgSend(p2, sel_registerName("init"));
    
    
    
    /**
     *访问私有方法
     */
    objc_msgSend(p2, @selector(eat));
    objc_msgSend(p2, @selector(run:),20);

  

原文地址:https://www.cnblogs.com/qingzZ/p/9766577.html