有没有办法获得没有任何实例化对象的类的属性列表?

时间:2015-12-01 11:39:32

标签: swift reflection swift2

我已经知道我们可以使用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
}

我的问题是,有没有办法获取类的属性而不引用它?某种静态方法,我传递我想要的类类型并获取它的属性列表。

1 个答案:

答案 0 :(得分:2)

在我与之合作过的所有反射实现中,都需要一个反射对象来处理。

无论是您提供的还是系统为您创建的,您都必须拥有一个具体的对象。