swift3.0 - 便利构造函数

  • 条件判断,只有满足条件,才实例化对象,可以防止造成不必要的内存开销
  • 简化对象的创建
  • 本身不负责属性的创建和初始化工作
  • 默认情况下,所有的构造方法都是指定构造函数
  • convenience关键字修饰的构造方法就是便利构造函数
  • 便利构造函数的特点
    • 可以返回nil
    • 只有便利构造函数中可以调用 self.init()
    • 便利构造函数不能被重写或者 super
    • 主要用于条件监测或者简化对象的创建
import UIKit

extension UITextField {
    convenience init(frame: CGRect,placeholder:String,fontSize:CGFloat) {
        //实例化当前对象
        self.init(frame:frame)
        //访问属性
        self.borderStyle = .roundedRect
        self.placeholder = placeholder
        self.font = UIFont.systemFont(ofSize: fontSize)
    }
    
}

你可能感兴趣的:(swift3.0 - 便利构造函数)