9.11 Comparing Rust Structs with OOP Concepts
For C++/Java/C# developers:
- Structs +
impl
blocks ≈ Classes - No inheritance in Rust; it uses traits to share behavior.
- Encapsulation: Controlled via visibility (
pub
). - Ownership and borrowing: Replace typical garbage collection or manual memory management.
Rust’s approach is sometimes called “protocol-oriented” or “trait-based” rather than class-based.