官方文档中说在swift中枚举和结构体设置类型属性时用的关键字是static
,在类中用的是class
。可是我发现在类中可以用static
,枚举和结构体不能使用class
。还发现一个问题就是,如果用class
标记类的类型属性的话,只能是计算属性。如果用static
来标记类的类型属性的话,可以是存储类型也可以是计算类型属性。
官方文档并没有说可以使用static
,请问这个是为什么?
官方文档中说在swift中枚举和结构体设置类型属性时用的关键字是static
,在类中用的是class
。可是我发现在类中可以用static
,枚举和结构体不能使用class
。还发现一个问题就是,如果用class
标记类的类型属性的话,只能是计算属性。如果用static
来标记类的类型属性的话,可以是存储类型也可以是计算类型属性。
官方文档并没有说可以使用static
,请问这个是为什么?
2 回答1k 阅读
1 回答1.1k 阅读✓ 已解决
1 回答2.7k 阅读
1 回答1.5k 阅读
1 回答1.4k 阅读
1.7k 阅读
1 回答1.1k 阅读
和大神们讨论了一番之后得到了如下结论:
在类中用
static
和class
来修饰类型属性的区别在于,class
修饰的可以被子类重写,而static
则不可以。class
不能用来修饰存储属性。如果有什么不同的声音,希望大家提出来!