swift3.0 构造器、析构方法(3)

1.Hello Wordhtml

2.基础语法函数

3.构造器、析构方法ui

4.扩展、协议spa

 

构造和析构是两种特殊的方法,在对象进行初始化的时候 使用构造,在对象的释放操做中,使用析构。代理

构造器的定义:code

init (){
     //代码  
}
init(name:String){
    //代码
}

在构造器中能够调用其它的构造器进行操做:htm

init (){
     //代码  
}
init(name:String){
    self.init()
    //代码
}

在类或结构初始化时,首先执行的是咱们在初始化调用的相应构造函数。对象

构造函数能够使用构造代理方式,使用关键字convenience,这种方式叫作便利构造器。blog

使用关键字required修饰的构造器被称为必要构造器,做用是,约束全部的继承子类重写该构造器。继承

在构造器 init后面添加“?”,则该构造器能够接受错误的参数而不会报错,容许在调用构造参数时出现错误,这种方式叫作可失败构造器。

构造器的继承:

1.在类的继承中,构造器是能够被子类进行继承的,如子类中存在构造器,则父类中的构造器将被覆盖,没法调用。

2.在父类中定义便利构造器,子类中也存在不一样结构的便利构造器,则子类能够调用父类的便利构造器和自身的便利构造器。

3.在父类中定义便利构造器,子类中没有便利构造器,没法调用。

必要构造器:

class A {
     required init(name:String){
        //代码
    }  
}

class B:A{
    //必须重写 不然报错
    required init(name:String){
        //代码
    }
}

 析构方法:析构方法为在类对象释放时隐式调用的方法,与构造器相似,区别是使用deinit为方法名称,而单个类对象中只容许有一个无参析构方法,用来释放对象,回收资源,以及作一些业务逻辑操做。

相关文章
相关标签/搜索