Programming Languages
Rust
Subjective
Oct 04, 2025
What are traits in Rust and how do they enable polymorphism?
Detailed Explanation
Traits define shared behavior:
• Similar to interfaces in other languages
• Define method signatures
• Can have default implementations
• Enable polymorphism without inheritance
• Trait objects for dynamic dispatch
Example:
trait Summary {
fn summarize(&self) -> String;
}
struct Article {
title: String,
content: String,
}
impl Summary for Article {
fn summarize(&self) -> String {
format!("{}: {}", self.title, self.content)
}
}
Discussion (0)
No comments yet. Be the first to share your thoughts!
Share Your Thoughts