Курс языка программирования Raku / Объекты, ввод-вывод и исключения / Классы и объекты

Классы

До сих пор все типы данных, которыми вы пользовались, — числа, строки, массивы и так далее — были встроены в Raku. Объектно-ориентированное программирование позволяет определять собственные типы, называемые классами, и создавать значения этих типов, называемые объектами.

Класс определяется ключевым словом class, за которым следуют имя и блок:

class Dog {
}

Этот класс Dog пока пуст, но он уже является новым типом. Чтобы создать объект класса — экземпляр — вызовите метод new у имени класса:

class Dog {
}

my $rex = Dog.new;
say $rex; # Dog.new

Теперь переменная $rex содержит объект Dog. Каждый вызов new создаёт отдельный объект:

my $rex = Dog.new;
my $fido = Dog.new;

$rex и $fido — две разные собаки, хотя у класса пока нет никакого содержимого. В следующих разделах вы дадите классу собственные данные (атрибуты) и собственное поведение (методы). Первая тема подробнее рассматривает разницу между классом и его экземплярами.

Ещё в этом разделе

Практика

Пройдите 1 тест по содержанию этого раздела.

Упражнения

В этом разделе 2 упражнения. Прежде чем приступать к практике, изучите все темы раздела.

  1. Определён или нет
  2. Назовите тип

Навигация по курсу

Классы и объекты   |   Объекты типа и экземпляры