关于NSObject使用的歧义?

时间:2015-08-26 14:58:18

标签: swift nsobject foundation

我是ios开发的新手,并开始使用swift进行编码,我有一些关于NSOject的基本问题,我找不到任何满意的答案。

我的问题是,如果我们要创建一个新类,那么该类必须继承来自根类基础(即), NSObject 或它是可选的,因为现在我们在xcode中有 swift file 模板。

 import UIKit

 class Myclass: NSObject {

 }

import UIKit

     class Myclass {  // where here myclass is the base class

     }

任何帮助将不胜感激......

1 个答案:

答案 0 :(得分:2)

以上答案是正确的,但有很多情况下您可能需要/想要继承NSObject。 @先生。比尔兹利提到了一对夫妇。我想补充一点,如果您正在与Cocoa / Cocoa Touch API或Apple的许多其他框架进行交互,您可能希望从NSObject继承,出于多种互操作性原因。

例如,如果您希望您的类符合NSCoding协议或任何标准委托或数据源协议(例如UITableViewDataSource),那么您将节省很多时间继承自NSObject的麻烦。我同意不继承的建议,除非你需要,但我发现在使用Apple的API时经常是必要的。