Mastering Scala Basics: Modeling Data with Traits
Traits allow us to express that multiple classes share a common super-type. Traits are similar to Java’s interfaces and can be thought of abstraction over classes. // Trait declaration trait TraitName { declarationExpression } // declare class is a subtype of trait class Name(…) extends TraitName { … } Two ways that traits are different…