Léxico TI › Programación › Trait (Rust)

Trait (Rust)

Programación Svenska → Actualizado: 2026-09-03

El mecanismo de Rust para el comportamiento compartido. Parecido a las interfaces (Java) o a las typeclasses (Haskell). trait Animal { fn speak(&self) -> String; }. Se implementa por separado del tipo.

Se distingue de la interfaz de Java: se puede implementar un trait para tipos que no son propios (la orphan rule limita esto entre crates). Implementaciones por defecto: un trait puede aportar implementaciones de método que luego pueden sobrescribirse. Los trait objects (dyn Trait) dan polimorfismo en tiempo de ejecución (basado en vtable). El despacho estático (genéricos + trait bounds) es lo habitual por defecto — monomorfización. Traits estándar importantes: Clone, Debug, Display, Iterator, Serialize/Deserialize. Los traits async se estabilizaron en Rust 1.75 (2023).

← Volver al léxico