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

Методы с параметрами

Метод может принимать параметры, как и подпрограмма. Они перечисляются в круглых скобках после имени метода:

class Account {
    has $.balance is rw = 0;

    method deposit($amount) {
        $.balance += $amount;
    }
}

Метод deposit принимает один параметр, $amount, и прибавляет его к балансу объекта:

my $a = Account.new;
$a.deposit(100);
$a.deposit(50);
say $a.balance; # 150

Каждый вызов работает с тем объектом, у которого он был сделан, поэтому один и тот же метод может независимо изменять разные объекты. Методы могут принимать позиционные и именованные параметры, значения по умолчанию и всё остальное, что вы уже видели в сигнатурах подпрограмм.

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

Приватные атрибуты   |   Методы, вызывающие методы


💪 Или перейдите сразу к упражнениям этого раздела.