【发布时间】:2016-06-10 11:55:18
【问题描述】:
我已阅读 Swift 文档并在此处搜索,但我仍然不确定如何实现一个类层次结构,其中每个子类为继承的静态属性设置自定义值;那就是:
- 基类定义了一个静态属性:所有实例共享相同的值。
- 子类覆盖静态属性:所有实例共享相同的值,与基类不同。
属性可以存储吗?
另外,我应该如何从实例方法中访问属性的值(不管特定的类),并且每次都获得正确的值?下面的代码会起作用吗?
class BaseClass
{
// To be overridden by subclasses:
static var myStaticProperty = "Hello"
func useTheStaticProperty()
{
// Should yield the value of the overridden property
// when executed on instances of a subclass:
let propertyValue = self.dynamicType.myStaticProperty
// (do something with the value)
}
【问题讨论】:
标签: swift inheritance properties static