/**
지정생성자와 편의생성자의 이해
*/
class Aclass1 {
var x: Int
var y: Int
init(x: Int, y: Int) {
self.x = x
self.y = y
}
convenience init() {
self.init(x: 0, y: 0)
}
convenience init(x: Int) {
self.init(x: x, y: 0)
}
convenience init(y: Int) {
self.init(x: 0, y: y)
}
}
class Bclass1: Aclass1 {
var z: Int
init(x: Int, y:Int, z:Int) {
self.z = z
super.init(x: x, y: y)
}
// override init(x: Int, y: Int) {
// self.z = 0
// super.init(x: x, y: y)
// }
convenience override init(x: Int, y: Int) {
self.init(x: x, y: y, z: 0)
}
convenience init() {
self.init(x: 0, y: 0, z: 0)
}
convenience init(z: Int) {
self.init(x: z, y: 0, z: 0)
}
}