不像class var,它们可以在子类中覆盖,我相信同样适用于static,但不幸的是没有。这是一个例子
@H_301_8@
documentation说:
public class A { private static let NAME: String = "A" } public class B: A { private static let NAME: String = "B" //error }
在我看来,静态意味着与该特定类的关联,所以在上面的例子中,B应该得到它自己的空间来重新定义该变量,因为它只与B相关联,我正在还原到存储的属性,除非有更好的解决方案。
“
static
” methods and properties are now allowed in classes (as an alias for “
class final
”).
所以这是最后的,这意味着你不能覆盖它。