我是ios开发的新手,并开始使用swift进行编码,我有一些关于NSOject的基本问题,我找不到任何满意的答案。
我的问题是,如果我们要创建一个新类,那么该类必须继承来自根类基础(即), NSObject 或它是可选的,因为现在我们在xcode中有 swift file 模板。
import UIKit
class Myclass: NSObject {
}
或
import UIKit
class Myclass { // where here myclass is the base class
}
任何帮助将不胜感激......
答案 0 :(得分:2)
以上答案是正确的,但有很多情况下您可能需要/想要继承NSObject
。 @先生。比尔兹利提到了一对夫妇。我想补充一点,如果您正在与Cocoa / Cocoa Touch API或Apple的许多其他框架进行交互,您可能希望从NSObject
继承,出于多种互操作性原因。
例如,如果您希望您的类符合NSCoding
协议或任何标准委托或数据源协议(例如UITableViewDataSource
),那么您将节省很多时间继承自NSObject
的麻烦。我同意不继承的建议,除非你需要,但我发现在使用Apple的API时经常是必要的。