swift学习之构造函数

来源:互联网 发布:常州软件开发公司 编辑:程序博客网 时间:2024/05/16 14:56

定义一个person类来介绍一下构造函数

import UIKitclass Person: NSObject {//    如果定义的属性没有初始化,需要在后面添加“?”//    如果在构造方法中初始化了,“?”就可以不用添加    var name:String?    /*    在定义基本类型的时候,如果是”基本类型“并且是可选的属性,swift在电泳super.init的时候,不会给它分配内存空间。如果是对象的话,就会分配内存空间。因此要给基础属性赋值,在使用kvc的赋值    *///    var age:Int?    var age:Int = 0//    重写构造方法    override init() {        self.name = ""        self.age = 0    }//    自定义构造方法//    swift 有方法重载的概念 java也有,允许有重名方法名,但是形参和返回值不同就行    init(name:String,age:Int)    {        self.name = name;        self.age = age;    }    //    自定义构造方法    init(dict:[String:NSObject])    {        super.init()        //在使用kvc的时候一定要先把对象初始化        setValuesForKeysWithDictionary(dict)    }}

ps:

如果你自定义了init方法,没有从重写init方法,那么init方法不能用,只有自定义方法一个

0 0
原创粉丝点击