Курс Raku / Об’єкти, введення-виведення та винятки / Класи та об’єкти / Атрибути
Значення за замовчуванням
Атрибуту можна надати типове значення, яке використовується,
коли об’єкт створюють без значення для нього. Запишіть типове значення
після атрибута через =:
class Dog {
has Str $.name;
has Rat $.weight = 4.0;
}Зверніть увагу, що, як і для змінних, тип атрибутів можна задати примусово.
Якщо ви не передасте weight до new, атрибут
візьме типове значення:
my $rex = Dog.new(name => 'Rex');
say $rex.weight; # 4Типове значення все одно можна перекрити, передавши своє:
my $lighty = Dog.new(name => 'Lighty', weight => 3.2);
say $lighty.weight; # 3.2Без типового значення й без значення, переданого до new,
атрибут просто невизначений — точнісінько як щойно створена скалярна
змінна.
Практика
Виконайте 1 тест за змістом цієї теми.
Навігація курсом
← Атрибути для читання та запису | Тест — Атрибути →
💪 Або перейдіть одразу до вправ цього розділу.