Курс по 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 упражнения. Разгледайте всички теми в раздела, преди да се захванете с практиката.