isa class superclass metaclass
http://www.cnblogs.com/feng9exe/p/7232915.html
Note: 其实这里的难点就在于对 和 的区分。
- .class 当 target 是 Instance 则返回 Class,当 target 是 Class 则返回自身
- object_getClass 返回 指针的指向
ViewController: 0x10deee650, ViewController, 0
ViewController: 0x10deee678, NSObject, 1
NSObject: 0x10ef8cee8, NSObject, 1
NSObject: 0x10ef8cee8, NSObject, 1
ViewController
UIViewController
UIResponder
NSObject
ViewController: 0x10deee650, ViewController, 0
ViewController: 0x10deee650, ViewController, 0
Class currentClass = object_getClass(self);
Class nextClass = object_getClass(currentClass);
Class superClass = class_getSuperclass(currentClass);
Class xClass = self.class;
int k = 0;
do {
NSLog(@"%@:\t%p,\t%s,\t%zd",NSStringFromClass(currentClass),currentClass,object_getClassName(currentClass),class_isMetaClass(currentClass));
currentClass = nextClass;
nextClass = object_getClass(currentClass);
}while (k++ < 4);
NSLog(NSStringFromClass(self.class));
while (superClass != NULL) {
NSLog(NSStringFromClass(superClass));
superClass = class_getSuperclass(superClass);
}
k = 0;
do {
NSLog(@"%@:\t%p,\t%s,\t%zd",NSStringFromClass(xClass),xClass,object_getClassName(xClass),class_isMetaClass(xClass));
xClass = xClass.class;
//nextClass = object_getClass(currentClass);
}while (k++ < 3);
最新文章
- jQuery学习之路(2)-DOM操作
- web安全相关知识
- 浏览器-06 HTML和CSS解析2
- 剑指offer题目11-20
- ASP.NET MVC4 学习系统三(控制器Controller)
- Android多媒体数据库之MediaStore研究
- Asp.Net的应用程序生命周期概述
- SQL Server 死锁检查
- ARM异常---一个DataAbort的触发过程:
- [LeetCode228]Summary Ranges
- POJ 1201 &;amp;&;amp; HDU 1384 Intervals(差动制动系统)
- Zynq和microblaze的区别
- svn一整套使用,从下载到整个服务器搭建完成的详细说明
- 使用jQuery获取session中存储的list集合
- Volley网络框架完全解析(使用篇)
- 2018-2019-2 《网络对抗技术》Exp2 后门原理与实践
- 使用Dom4j对XML文档创建与解析
- 吴伯凡:VUCA时代的自我迭代
- JPA+Hibernate 3.3 ——基本属性映射
- DataGrip设置长sql语句自动换行
热门文章
- [javaSE] 集合框架(共性方法)
- 深入浅出图解【计算机网络】 之 【TCP可靠传输的实现2: 超时重传+拥塞控制】
- js-用于检测类数组对象的函数
- [微信小程序] 微信小程序获取用户定位信息并加载对应城市信息,wx.getLocation,腾讯地图小程序api,微信小程序经纬度逆解析地理信息
- 什么是URI,URL以及URN,你真的理解了吗。
- L3(SP+OO+UT)能力评估
- OpenGL学习--开发环境
- Visualizing LSTM Layer with t-sne in Neural Networks
- Retrofit+RxJava(2)-基本使用
- Eclipse创建第一个Servlet(Dynamic Web Project方式)、第一个Web Fragment Project(web容器向jar中寻找class文件)