Kotlin构造函数

普通构造函数

  • 直接命名即可
  • 需要有默认值
  • 基本类型可以缺省
  • 使用缺省一定要把默认类型写对
  • 调用init函数后可以作为全局变量使用
class MyBean(name:String,age:Int,sex:Boolean) {
    var name:String = ""
    var age:Int = 0
    //缺省
    var sex = false
    

    init {
        this.name = name
        this.age = age
        this.sex = sex
    }

多重构造函数

  1. 多重构造函数需要有一个主函数,和N个次函数
  2. 次函数将委托给主函数
  3. 委托关系用this关键词表示
class MyBean {
    var name: String = ""

    var age: Int = 0
    //缺省
    var sex = false

    /**
     * 1. 多重构造函数需要有一个主函数,和N个次函数
     * 2. 次函数将委托给主函数
     * 3. 委托关系用this关键词表示
     */
    //主函数
    constructor()
    //次函数
    constructor(name:String):this(){
        this.name = name
    }
    //次函数
    constructor(name:String,age:Int,sex:Boolean):this(){
        this.name = name
        this.age = age
        this.sex = sex
    }

}

构造函数使用

  • 普通构造函数
//填值,相当于setter
var tb = MyBean()
tb.age = 12
tb.name = "ZhangSan"
tb.sex = true

//取值,相当于getter
var zsName = tb.name
var zsAge = tb.age
var zsSex = tb.sex
  • 多重构造函数
var bean1 = MyBean()
var bean2 = MyBean("zhangsan")
var bean3 = MyBean("zhangsan",14,false)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容