Ответ 1
Swift поддерживает свойства статического типа, в том числе и для классов, начиная с Swift 1.2:
class MyClass {
static let pi = 3.1415926
}
Если вам нужно иметь переменную класса, которая является переопределяемой в подклассе, вам нужно использовать свойство вычисленного класса:
class MyClass {
class var pi: Double { return 3.1415926 }
}
class IndianaClass : MyClass {
override class var pi: Double { return 4 / (5 / 4) }
}