,所有事物都应该是对象(严格来说 Objective-C并没有完全做到这一点,因为它有象int,double这样的简单 变量类型)
在Objective-C语言中,每一个类实际上也是一个对象。...(图中除了isa外还有其它成员变量,但那是为了兼容非2.0版的Objective-C的遗留逻辑,大家可以忽略它。)...在实际编程中,我们几乎不会遇到向元类发消息的情况,那它的isa 指针在实际上很少用到。不过这么设计保证了面向对象的干净,即所有事物都是对象,都有isa指针。...若是如此,那就应该使用==操作符,而不要使用比较Objective-C对象使常用的“isEqual:”方法。因为==操作符比较的是指针是否相等,也就是比较内存地址是否相同。...也就是说,这条消息(指isKindOfClass:)的返回值与直接接受代理的对象身上查询其类型信息所得的结果相同。