对象和NSObject之间的区别

Nat*_*pos 8 object objective-c foundation nsobject

我正在学习Objective-C,正如我所看到的,在一些教程中他们使用Object(从objc/Object.h导入),在其他教程中我看到使用NSObject(从Foundation/NSObject.h导入),但是什么是他们之间的主要区别?

问候.

Abi*_*ern 6

Objective-C只是语言.

Cocoa框架使用NSObject基类作为层次结构的根类.其他实现使用自己的根类,在您的情况下使用Object类.


Ken*_*Ken 6

你应该忽略对象.

Objective-C允许多个根类.Object是一个早于NSObject的根类.这绝不是你想要使用的东西.只有当某些东西已经与Object交互时才有意义,所以你必须处理它.这是非常罕见的.

对象不实现-retain和-release,例如.