第一种适用于继承NSObject的类
let className:String=NSStringFromClass(AnyClass)
if let classType =NSClassFromString(className) as? 类型.Type {
let 实例 = classType.init(构造函数)
}
第二种继不继承NSObject的类都可以
let classType :AnyClass= type(of:实例)
if let type =classTypeas?类型.Type{
let temp = type.init())
}
注意以上两种方式都要求类提供required的构造函数即至少提供
required init() {
}
网友评论