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

Вторичный конструктор в Kotlin

Вторичный конструктор - ещё один способ создать объект, когда первичный конструктор уже задан. Его пишут в теле класса словом constructor и обязательно связывают с первичным через this:

class Employee(val name: String, val salary: Int) { constructor(name: String) : this(name, 0) }

Короткий вызов попадает во вторичный конструктор, а тот передаёт имя и ноль в первичный. Свойства создаёт только первичный конструктор:

fun main() { val employee = Employee("ann") println(employee.name) println(employee.salary) }

Тело вторичного конструктора выполняется после init. К этому моменту первичный конструктор уже записал свойства:

class Employee(val name: String, val salary: Int) { init { println(salary) } constructor(name: String) : this(name, 0) { println(name) } } fun main() { Employee("ann") }

Сделайте класс Product с названием и ценой в первичном конструкторе. Добавьте вторичный конструктор только с названием: цена при этом равна 0.

Создайте товар коротким вызовом со строкой "pen" и выведите название и цену.

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