Swift开发记录

Swift开发记录

Any、AnyObject、AnyClass

Any、AnyObject参考链接

AnyClass参考链接

  AnyObject 可以代表任何 class 类型的实例
  
  Any 可以表示任意类型,甚至包括方法 (func) 类型
  
  AnyClass其实就是任意类型的元类型
  swift中AnyClass的定义: 
  public typealias AnyClass = Swift.AnyObject.Type
  

如何通过AnyClass创建类的实例

   通过AnyClass创建类A实例
  
   Class A: NSObject {
   
   }
   
   // 获取A类的class
   let mm:AnyClass = A.Self
   
   // 将mm转换为A类型
   if let tempClass = mm as? A.Type {
       // 创建实例
       let aObjcet = tempClass.init() 
   }
   
   注意:所有通过AnyClass
   

swift如何表示类似于Object-C NSObject< Protocol >

    假如有类A和协议TestProtocol,方法aaa返回参数要满足既是A对象同时又实现了协议TestProtocol
    
    Object-C表示法
    
    - (A)aaa

你可能感兴趣的:(ios,Swift,开发,常见问题)