[rust] 제네릭 클래스 상속
Rust는 제네릭을 통해 코드의 재사용성을 높일 수 있는 강력한 기능을 제공합니다. 제네릭 클래스 상속은 Rust에서는 trait를 통해 구현됩니다.
트레이트 (Traits)
트레이트는 Rust에서 공유할 수 있는 메서드 세트를 정의하는 방법입니다. 제네릭 클래스가 상속할 메서드들을 트레이트에 정의하고, 해당 트레이트를 구현함으로써 클래스가 해당 메서드들을 상속받을 수 있습니다.
trait Shape {
fn area(&self) -> f64;
}
위의 예제에서 Shape
트레이트는 area
메서드를 가지고 있습니다.
제네릭 클래스 상속
제네릭 클래스는 트레이트를 구현함으로써 클래스 상속을 구현할 수 있습니다.
struct Circle {
radius: f64,
}
impl Shape for Circle {
fn area(&self) -> f64 {
std::f64::consts::PI * self.radius * self.radius
}
}
위의 예제에서 Circle
클래스는 Shape
트레이트를 구현하고 있으며, area
메서드를 재정의함으로써 Shape
트레잇을 상속받고 있습니다.
결론
Rust에서는 제네릭 클래스 상속을 트레이트를 통해 구현할 수 있습니다. 이를 통해 코드의 재사용성을 높일 수 있으며, 보다 유연한 구조를 만들 수 있습니다.
더 자세한 내용은 Rust 공식 문서를 참고하세요.