类和结构体的构造器
1、在构造器内所有属性必须设置初始值(可选属性除外,因为可选属性初始值默认为nil),或者在属性声明时为其设置默认值也可以。
2、在构造器内部设置初始值,是直接设置的,不会触发属性观察者。
3、可以在构造器内部给常量(let修饰的)属性赋值,只要在构造过程结束时它设置成确定的值。一旦常量属性被赋值,它将永远不可更改,也不能在子类中修改。
自定义构造器:
1、实参标签 和 形参命名
如 init(fromFahrenheit fahrenheit: Double) {
}
fromFahrenheit 是 实参标签;fahrenheit 是 形参命名
如果在定义构造器时没有提供 实参标签,Swift 会为构造器的每个形参自动生成一个实参标签。
如果不希望构造器的某个形参使用实参标签,可以使用下划线(_)来代替显式的实参标签来重写默认行为。
如 init(_ celsius: Double){
}
默认构造器:
1、如果结构体或类为所有属性提供了默认值,又没有提供任何自定义的构造器,那么 Swift 会给这些结构体或类提供一个默认构造器。
结构体的逐一成员构造器:
1、结构体如果没有定义任何自定义构造器
swift构造器
本文详细介绍了Swift中构造器的使用,包括类和结构体的构造器、自定义构造器、默认构造器、逐一成员构造器、值类型的构造器代理、类的继承和构造过程、可失败构造器以及通过闭包或函数设置属性的默认值等概念,旨在帮助开发者更好地理解和运用Swift的构造器。
摘要由CSDN通过智能技术生成