Traits are structural construction objects in the Groovy language. Traits enable implementation of interfaces. They are compatible with static type checking and compilation Traits are behaved as interfaces with default implementations and state. Declaration of a trait is by using the trait keyword. ---------- Traits methods scope support only public and private methods.