便利初始化器(Swift Day1)
在里面:
指定的初始化器是类的主要初始化器。 指定的初始化程序将完全初始化该类引入的所有属性,并调用适当的超类初始化程序以继续超类链中的初始化过程。
convenience init
:
便捷初始化器是辅助的,支持类的初始化器。 您可以定义一个便捷初始化程序,以从与便捷初始化程序相同的类中调用一个指定初始化程序,并将某些指定初始值设定项的参数设置为默认值。
在上面的示例中,基本上,指定的初始化程序是
init(type: String)
,它确保所有存储的属性都已初始化。 Music类没有超类,因此init(type:String)初始化程序不需要调用super.init()即可完成其初始化。
便捷初始化程序,不带任何参数,通过使用指定的初始化程序,将
type
存储属性的值自动设置为“Jazz"
。 便利的初始化程序需要self.init来调用它。
现在我们有了创建UIColor的便利初始化,并且如示例2所述,事情非常简单。 我们只需要在创建UIColor的UIColor Extensiom中添加便便性初始化即可。
让BlueColor = UIColor(红色:30/255,绿色:55/255,蓝色:255/255,alpha:1)
扩展UIColor {
便利初始化(r:CGFloat,g:CGFloat,b:CGFloat){
self.init(红色:r / 255,绿色:g / 255,蓝色:b / 255,alpha:1)
}
}
让myFavblueColor = UIColor(r:30,g:55,b:255)
我编写了上面的代码,以提供更方便的方式来声明自定义uicolor。
结论