Kotlin基础之定义类及构造方法

Kotlin中定义类的关键字依然是class

//如果是仅仅是定义一个类,那么可以省略大括弧,直接这样定义即可
class Animal

如果类中还需要方法或者属性的话,就需要加上大括弧了

class Animal{
     var name:String?=null
     var age:Int=0

     fun eat(){}
}

Kotlin中默认会为成员属性添加get/set方法

示例中的name和age两个属性,虽然我们没有声明对应的get和set方法,但是我们依然可以直接调用两个方法

      //获取属性,类似get方法
        var age=animal.age
        var name=animal.name

       //更改属性,类似set方法
        animal.age=10
        animal.name="奔波儿霸"

Kotlin中使用constructor来声明构造方法,

在Kotlin中,构造方法分主要构造方法和次要构造方法
1.次要构造方法
类似java中的构造方法,直接声明在类中的

class Animal{
     var name:String?=null
     var age:Int=0

// 空参的构造方法
    constructor()
//有参数的构造方法
    constructor(age:Int,name:String){
        this.name=name
        this.age=age
    }
}

备注:构造方法如果没有方法体,那么大括弧可以省略
构造方法相互调用

class Animal{

     var name:String?=null
     var age:Int=0

//空参的构造方法调用两个参数的构造方法
    constructor():this(10,"奔波儿灞")

    constructor(age:Int,name:String){
        this.name=name
        this.age=age
    }
}

如果是子类的构造方法调用父类的构造方法,那么把 :this换成 :super即可

说明:可以看到,构造方法的相互调用使用 :this或者 :super

你可能感兴趣的:(Kotlin基础之定义类及构造方法)