Начиная с этого урока мы приступаем к теме ООП. В уроке вы изучите создание классов и создание объектов в языке Kotlin. В Kotlin каждый класс создается с минимальным количеством кода, при этом обладает большим функционалом.
Видеоурок
Каждый файл в языке Kotlin является классом, поэтому, чтобы создать очередной класс необходимо создать новый файл в проекте. Название файла это и есть название класса, поэтому сразу давайте осмысленные имена.
В любом классе можно создавать поля (переменные), методы (функции), а также конструкторы. В основном классе мы все это уже прописывали, поэтому ничего нового здесь нет.
Создав новый класс и поместив туда какую-либо информацию мы можем создавать на основе него новые объекты. Объекты будут иметь доступ ко всем характеристикам класса, которые отмечены модификатором public.
Существует четыре модификатора доступа:
public– данные будут видны повсюду, как в классе, так и вне его;internal– данные будут видны только в внутри одного модуля;protected– данные будут видны только в классе, где они созданы, а также в классах наследниках;private– данные будут видны только в классе, где они созданы.
Пример простого класса приведен ниже:
class Book(var name: String = "None", var pages: Int = 0) {
var weight: Int = 0
internal fun getInfoBook() {
print("В книге $name находиться $pages страниц.")
print("При этом она весит $weight")
}
}
На основе такого класса мы можем создать множество объектов. Каждый объект в данном случае будет представлять из себя конкретную книжку. Для каждого объекта мы можем указать уникальные данные: количество страниц, название книги и её вес.
Чтобы создать объект нам потребуется следующий код:
val sherlock_holms = Book() // создание объекта
sherlock_holms.getInfoBook()
Такой код можно прописать и в одной строке кода. Мы для наглядности разбили код в две строки.
Чтобы брать данные из класса через объект необходимо ставить точку и указывать имя переменной или функции, которую мы хотим взять.