首页 > 其他 > 详细

关于运行时,获取私有变量和私有方法

时间:2015-07-23 17:47:21      阅读:239      评论:0      收藏:0      [点我收藏+]

1、下面的代码就是怎样获取私有变量(记得加头文件#import <objc/runtime.h>):

  1. NSObject *str;  
  2.  Mobj *obj = [[Mobj alloc] init];  
  3.  object_getInstanceVariable(obj, "mt_", (void *)&str);  
  4.  NSLog(@"%@",str);  
  5.  [obj release];

2、下面的代码就是怎样获取私有方法(记得加头文件#import <objc/runtime.h>)

OBJC_EXPORTMethod class_getInstanceMethod(Class cls, SEL name) 获取实例化方法的指针

OBJC_EXPORTMethod class_getClassMethod(Class cls, SEL name)  获取类方法的指针


OBJC_EXPORTIMP class_getMethodImplementation(Class cls, SEL name) 获取方法的实现部分


OBJC_EXPORT BOOL class_respondsToSelector(Class cls, SEL sel)  是否响应该方法


OBJC_EXPORT Method *class_copyMethodList(Class cls, unsigned int *outCount) 获取方法列表和数目


OBJC_EXPORT BOOL class_conformsToProtocol(Class cls, Protocol *protocol)  是否遵循某协议









版权声明:本文为博主原创文章,未经博主允许不得转载。

关于运行时,获取私有变量和私有方法

原文:http://blog.csdn.net/klabcxy36897/article/details/47023943

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!