Реалізація трейтів
Speaker Notes
-
Щоб реалізувати
Trait
дляType
, ви використовуєтеimpl Trait for Type { .. }
блок. -
На відміну від інтерфейсів Go, просто мати відповідні методи недостатньо: тип
Cat
з методомtalk()
не буде автоматично задовольнятиPet
, якщо він не знаходиться у блоціimpl Pet
. -
Трейти можуть надавати реалізації за замовчуванням для деяких методів. Реалізації за замовчуванням можуть покладатися на всі методи трейту. У цьому випадку надається
greet
, який покладається наtalk
.