
#7 - Создание классов и объектов (ООП)
Видеоурок
Каждый файл в языке 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()
Такой код можно прописать и в одной строке кода. Мы для наглядности разбили код в две строки.
Чтобы брать данные из класса через объект необходимо ставить точку и указывать имя переменной или функции, которую мы хотим взять.
Исходный код
Весь код будет доступен после подписки на проект!
Задание к уроку
Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям
Большое задание по курсу
Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца
Также стоит посмотреть