必选参数构造函数

1. 建立一个对象 Person.swift

/**
   构造函数
   1.给属性分配空间
   2.设置初始数值
 
   Swift 中构造函数 ’都‘ 是init
 */
class Person: NSObject {
    
    //对象的属性应该是可变的
    //可选项,允许变量为空,var 的默认值就是 nil
    var name: String
    var age: Int
    
    //‘重写’默认的构造函数
    // 父类提供了这个函数,而子类需要对父类的函数进行扩展,就叫做重写
    // 特点: 可以 super.xxx 调用父类的方法
    override init(){
        name = "zhangsan"
        age = 18
        //调用父亲的构造函数
        super.init()
    }
}

2. 调用函数

  //提示: 在Swift 中,默认所有的属性和方法,都是全局共享的,不需要 import,可以直接使用
  func demo(){
        let p = Person();
        print("\(p.name) \(p.age)")
    }

3. 子类的构造函数&调用堆栈调试技巧

  3.1 创建一个继承 Person 的 Student.swift 对象

class Student: Person {
    var no: String

    override init() {
        print("Student init")
        no = "001"
        //从 Xcode 7 beta 5 开始,系统会默认声称一个 super.init 方法调用
        //建议保留 super.init(),代码的调用线索很清晰
       super.init()
    }
}

  3.2 调用函数

func demo(){
        //po self
        let p = Student();
        print("\(p.name) \(p.age) \(p.no)")
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hanyang Li

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值