swift0001

关键字:

init初始化

定义使用类初始化,默认初始化方法,便利初始化方法,使用闭包

注意:1:没有返回值,不需要加func,使用对象属性之前必须对属性初始化

使用:

var a:Int

init(){

a=0;//在上面没有初始化必须在这初始化不然报错,提示未初始化

}

当声明为强制解包可选(!)可以不用初始化方法

如:

var a:Int

init(ma:Int){

  a=ma;

}

默认初始化:

class test{

var a="xxx" //对类存储属性初始化赋值

var b:Int? //对类存储属性设置为可选

var c:Int! //对类存储属性设置为强制解包可选

便利初始化方法及重载:

在便利初始化方法的实现里面必须调用一个其他的初始化方法,在func前面添加convenience 关键字即可

class test{

var a:int

   init(a:Int){

       self.a=a

  }

   convenience init(a b :Int){

       self.init(a:b)//在便利初始化方法的实现里面必须调用一个其他的初始化方法

    }

   convenience init(b :Int){

      self.init(a:b)//在便利初始化方法的重载 

    }

了解使用闭包(如果某个存储属性的默认值需要特别定制或者准备,那么久可以使用闭包来初始化这个属性的默认值) 

注意:闭包要添加(),告诉swift要立即执行这个闭包,否则会把本身作为赋值给属性而报错

deist反初始化方法

初始化方法是为了类创建对象的时候,使用对象属性对其属性赋初始值,那么当你这个对象销毁的使用,也要对属性进行释放。减少资源浪费。 
注意点 
要把对象设置为nil,不然反初始化方法不会被调用 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值