iOS 中如何构成一个最基本的对象

在iOS 中一个对象最少需要实现NSObject Protocol的方法。
一个遵守了NSObject Protocol的对象可以被认为是一个类的对象。这个对象可以被询问一下信息:

  • Class, 和它的类在继承链中的位置
  • 协议一致性
  • 回复某个具体消息的能力

Cocoa的根类采用了这个协议,所以所有继承走NSObject的对象都有这个协议描述的特点。

class: 返回消息接收者的类对象。
superClass: 返回消息接收者的父类对象。

isEqual:: 返回消息接收者和目标对象是不是同一个。
hash: 返回一个整数,可以作为一个哈希表中的地址。
self: 返回消息接收者自身。

isKindOfClass:: 返回消息接收者是否是目标类或者目标类子类的实例。
isMemberOfClass: 返回消息接收者是否是目标类的实例。
respondsToSelector: 返回消息接收者是否实现或继承了某个回复目标消息的方法。
conformsToProtocol: 返回消息接收者是否遵守了目标协议。

description: 返回消息接收者自身的一个描述。
debugDescription: 返回消息接收者显示在debugger中的描述。

performSelector:: 向消息接收者发送目标消息,并返回执行消息的结果。
performSelector:withObject:: 向消息接收者发送一个带参数的消息, 并返回执行消息的结果。
performSelector:withObject:withObject::向消息接收者发送两个带参数的消息, 并返回执行消息的结果。

isProxy: 返回消息接收者是否不继承自NSObject。

retain: 增加消息接收者的引用计数。
release: 减少消息接收者的引用计数。
autorelease: 在当前的autorelease pool中减少消息接收者的引用计数。

zone: Zones 被大多数以它为参数地类弃用或者忽视。

你可能感兴趣的:(iOS 中如何构成一个最基本的对象)