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

Введение в абстрактные классы в Kotlin

Иногда один класс описывает общее для нескольких типов, но сами объекты этого класса создавать не планируют. Например, есть User с полями и методами, а конкретные люди в программе - это Employee и Student, наследующие от User. Базовый тип нужен только как общая основа для потомков.

Абстрактный класс как раз задаёт такую основу: в нём можно хранить общие свойства и методы, но экземпляр абстрактного класса создать нельзя. Компилятор не даст написать User(), если User объявлен абстрактным.

От обычного класса абстрактный отличается ключевым словом abstract в объявлении. Наследоваться от него можно так же, как от открытого родителя: потомок пишет двоеточие и вызывает конструктор базового типа:

abstract class User class Employee : User() class Student : User()

Объекты создают только у конкретных классов-потомков. Общая логика остаётся в абстрактном родителе, а отличия - в наследниках. В следующих уроках разберём объявление абстрактного класса, абстрактные методы и свойства, общий код в теле класса и конструкторы.

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