[swift] 상속을 통한 메서드의 확장

상속을 통한 메서드 추가

부모 클래스에서 정의된 메서드에 새로운 기능을 추가하려면, 자식 클래스에서 메서드 재정의(override)가 필요합니다. 예를 들어, 부모 클래스인 Vehicle에는 run() 메서드가 있고, 이를 상속받은 자식 클래스 Car에서 run() 메서드를 재정의하여 자동차가 이동하는 동작을 추가할 수 있습니다.

class Vehicle {
    func run() {
        print("The vehicle is moving")
    }
}

class Car: Vehicle {
    override func run() {
        super.run()
        print("The car is moving at high speed")
    }
}

위 예제에서 Car 클래스에서 run() 메서드를 재정의하여 super.run()을 통해 부모 클래스의 메서드를 호출하고, 그 뒤에 자동차가 빠른 속도로 이동하는 메시지를 추가합니다.

부모 메서드 호출

위 예제에서 super.run()을 사용하여 부모 클래스의 메서드를 호출할 수 있습니다. 이를 통해 부모 클래스의 기능을 유지한 채로 자식 클래스에서 기능을 추가하거나 변경할 수 있습니다.

결론

상속을 통해 기존 클래스의 메서드를 확장하고 수정하는 것은 스위프트에서 코드 재사용성을 높이고 유연한 프로그래밍을 가능하게 합니다. 상속을 올바르게 활용함으로써 효율적이고 유지보수가 쉬운 코드를 작성할 수 있습니다.