Actions

Kotlin

From zen2

Revision as of 23:17, 18 November 2017 by Chris (talk | contribs)

Class

Open

By default Kotlin classes are final, meaning no classes can inherit from them. In order to make them not final declare them open

open class Vehicle() {}

Override

To override class functions they must also be declared open

open class Vehicle() {
    open fun drive() {} 
}

class Car() : Vehicle() {
    override fun drive() {
    }
}

Super

To use a function from the parent class use super

open class Vehicle() {
    open fun drive() {
        println("original")
    } 
}

class Car() : Vehicle() {
    override fun drive() {
        println("some stuff")
        super.drive()   //will append "original"
    }
}