13.8 Swift构造方法的自动继承

前端之家收集整理的这篇文章主要介绍了13.8 Swift构造方法的自动继承前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

/**

父类的构造方法默认是不会被子类自动继承的。

*/

/**

813.8-构造方法自动继承.mp4

a 如果子类中没有任何定义的构造方法,且子类中所有的存储属性都有默认缺省值,会自动继承父类

所有的构造方法包括便利构造方法

b 如果子类中只是重写了父类中的某些(而不是全部)指定构造方法,不管子类中的存储属性是否

有缺省值,都不会继承父类中的其他构造方法

c 如果子类中重写了父类中所有的指定构造方法,不管子类中的存储属性是否有缺省值,都同时

会继承父类中所有的便利构造方法

*/

class XY {

var x: Int

var y: Int

init(x: Int,y: Int) {

self.x = x

self.y = y

}

init(x: Int) {

self.x = x

self.y = 0

}

convenience init() {

self.init(x: 0,y: 0)

}

}

class XYZ: XY {

var z: Int = 0

}

var t0 = XYZ()

var t1 = XYZ.init(x: 0)

var t2 = XYZ.init(x: 0,y: 0)

猜你在找的Swift相关文章