关于 Objective-C 有几件事让我感到困惑:
首先,在objective-c指南中,很清楚每个类都需要调用其子类的init方法。直接从 NSObject 继承的类是否需要调用它的init
方法有点不清楚。是这样吗?如果是这样,那是为什么呢?
其次,在关于 NSObject 的部分,有这个警告:
一个不需要从另一个类继承任何特殊行为的类仍然应该成为 NSObject 类的子类。类的实例必须至少能够在运行时表现得像 Objective-C 对象。从 NSObject 类继承这种能力比在新的类定义中重新发明它更简单、更可靠。
这是否意味着我需要明确指定所有对象都从 NSObject 继承?或者这就像 Java/Python/C# 中的所有类都是 NSObject 的子类型?如果没有,是否有任何理由制作 NSObject 以外的根类?