我已经知道我们可以使用Swift中的反射来获取对象的属性列表,但到目前为止我找到并实现的所有示例都使用了实例化对象。这样的事情:
func attributeList() -> [String] {
var attributeList = [String]()
let serializableMirror = Mirror(reflecting: self) //using instantiate object
for childMirror in serializableMirror.children {
if let label = childMirror.label {
attributeList.append(label)
}
}
return attributeList
}
我的问题是,有没有办法获取类的属性而不引用它?某种静态方法,我传递我想要的类类型并获取它的属性列表。
答案 0 :(得分:2)
在我与之合作过的所有反射实现中,都需要一个反射对象来处理。
无论是您提供的还是系统为您创建的,您都必须拥有一个具体的对象。