Классы и объекты

Классы и объекты

> Учебник LeekScript

Добро пожаловать в документацию по объектно-ориентированному программированию (ООП), которая состоит из создания классов и объектов для организации вашего кода. Эта функция была добавлена из LeekScript 2.

Объекты

Объекты — это значения, объединяющие несколько значений, каждое из которых связано с именем. Эти значения называются свойствами или полями.

Создание объекта

Для создания объекта мы используем следующий синтаксис:

В этом примере объект object имеет два свойства: name и age.

Чтобы создать пустой объект:

Доступ к свойству

Точка . разрешает доступ к свойству объекта:

Существует альтернативный синтаксис: object["prop"], позволяющий использовать строковое значение для доступа к свойству:

Изменение свойства

После доступа свойство может быть изменено как обычная переменная:

Сравнение объектов

Операторы == и === сравнивают, только если объекты одинаковы. Они возвращают false, даже если два объекта имеют одинаковые свойства:

NB: === устарело, начиная с LeekScript 4.

Список свойств

Классы

Класс — это модель для создания объектов.

Определение класса

Мы определяем класс «Оружие» с 4 полями, названными следующим образом:

Создание объекта с классом

new на самом деле является необязательным, класс похож на функцию и может быть вызван непосредственно для создания объекта:

Вы можете получить класс объекта, используя .class:

случай

Ключевое слово instanceof используется для проверки того, является ли объект экземпляром класса:

Строители

Конструктор — это определенная в классе функция, позволяющая создать объект из списка параметров. Мы определяем конструктор следующим образом:

Использование конструктора:

Методы

Метод — это функция, определенная в классе и используемая для объекта этого класса. Мы определяем метод следующим образом:

Мы используем метод с синтаксисом:

Синтаксис object["member"] также работает:

Использовать его не желательно, риск совершить ошибку достаточно велик.

Перегрузка

Можно перегрузить методы, просто изменив количество параметров

Затем вы можете использовать метод с одним или двумя параметрами по вашему выбору:

Наследие

Понятие наследования позволяет создать иерархию классов. Мы используем этот синтаксис с ключевым словом «extends». Мы пытаемся объявить «базовый» класс, из которого можно построить другие классы. Классы-наследники получают все члены (переменные) и методы (функции) базового класса и могут переопределять их или добавлять новые