这些是我的类:
class Shape: NSObject {
var prop1:String?
let prop2:String = "Shape Default"
func printEverything(){
var reflection = reflect(self)
for var i = 0 ; i < reflection.count ; i++ {
var (prop,mirror) = reflection[i]
println(prop);
}
}
}
class Rect: Shape {
var prop3:String?
let prop4:String = "Rect Default"
func func2(){
// body2
}
}
var aRect = Rect()
aRect.printEverything()
然而prineverything只显示:super, prop3, prop4。我希望得到全部遗产,即:super
, prop1
, prop2
, prop3
, prop4
, printEverything
, func2
。
另外,我如何从反射设置这些属性?
谢谢
您只能获得属性。如果你还想要基类的属性,那么你可以尝试使用evreflection。关于如何获得基类的属性,请参阅它的reflectedSub方法。它在item中,键为super