В этой главе мы узнаем о наследовании. По определению, мы все знаем, что наследование означает накопление некоторых свойств родительского класса в дочерний класс. В Kotlin базовый класс называется «Any», который является суперклассом «любого» класса по умолчанию, объявленного в Kotlin. Как и все другие OOPS, Kotlin также предоставляет эту функцию, используя одно ключевое слово, известное как «:» .
Все в Kotlin по умолчанию является окончательным, поэтому нам нужно использовать ключевое слово «open» перед объявлением класса, чтобы сделать его допустимым для наследования. Взгляните на следующий пример наследования.
import java.util.Arrays open class ABC { fun think () { print("Hey!! i am thiking ") } } class BCD: ABC(){ // inheritence happend using default constructor } fun main(args: Array<String>) { var a = BCD() a.think() }
Приведенный выше фрагмент кода выдаст следующий вывод в браузере.
Hey!! i am thiking
Теперь, что если мы хотим переопределить метод think () в дочернем классе. Затем нам нужно рассмотреть следующий пример, где мы создаем два класса и переопределяем одну из его функций в дочерний класс.
import java.util.Arrays open class ABC { open fun think () { print("Hey!! i am thinking ") } } class BCD: ABC() { // inheritance happens using default constructor override fun think() { print("I Am from Child") } } fun main(args: Array<String>) { var a = BCD() a.think() }
Приведенный выше фрагмент кода вызовет унаследованный метод дочернего класса и выдаст следующий вывод в браузере. Как и Java, Kotlin также не допускает множественное наследование.