Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗ktOpIhOv 34 of 123 menu
◀ ▶

Переопределение методов в Kotlin

Потомок может заменить реализацию метода родителя. Родительский метод помечают open, в потомке пишут override и новое тело:

open class User { var age: Int = 0 open fun setAge(age: Int) { if (age >= 0) { this.age = age } } }

В Employee сузим допустимый возраст:

class Employee : User() { override fun setAge(age: Int) { if (age in 18..65) { this.age = age } } }

При вызове у объекта потомка выполняется версия из Employee:

fun main() { val employee = Employee() employee.setAge(25) println(employee.age) }

В классе User сделайте геттер и сеттер возраста.

В классе Employee переопределите сеттер возраста и сделайте в нем проверку на то, что возраст от 18 до 65 лет.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить