有没有办法在超类中有一个函数,可以(当通过子类调用时)访问所说的子类类型?
我想在我的masterclass中使用通用info()
,可以将其称为给定有关子类类型的信息。
答案 0 :(得分:1)
我并不完全清楚你想要什么,但self
总是返回当前实例化的类 - 见下文
class A {
init() { }
func whatClassAmI() -> String {
return "\(type(of: self))"
}
}
class B: A { }
let a = A()
let sa = a.whatClassAmI() // "A", of course
let b = B()
let sb = b.whatClassAmI() // "B", as required