【发布时间】:2016-10-28 13:41:44
【问题描述】:
这是一个关于在 swift 中使用实例变量声明 swift 类的最佳实践的基本问题,所有值都将从 Firebase 回调中接收。这些选择中最好的方法是什么,或者如果有其他更好的方法,请告诉我:
解决方案一:
class User: NSObject {
var name:String = ""
override init() {
super.init()
}
}
解决方案 2:
class User: NSObject {
var name:String!
override init() {
super.init()
}
}
解决方案 3:
class User: NSObject {
var name:String?
override init() {
super.init()
}
}
解决方案 4:
class User: NSObject {
var name:String
override init() {
super.init()
// Now I need to init name variable here
}
}
【问题讨论】:
-
如果您不需要两阶段初始化或与 Obj-C 交互,请不要使用
!。如果您不需要nil值,请不要使用可选项。这基本上就是您需要知道的全部内容。
标签: ios swift initialization instance-variables