[swift] 부모 클래스의 메서드를 오버라이딩하는 방법

Swift에서는 자식 클래스가 부모 클래스의 메서드를 재정의(오버라이딩)할 수 있습니다. 이를 통해 자식 클래스에서 부모 클래스의 기능을 수정하거나 확장할 수 있습니다.

다음은 부모 클래스의 메서드를 오버라이딩하는 방법입니다.

  1. override 키워드 사용: 자식 클래스에서 부모 클래스의 메서드를 오버라이드 하려면, 해당 메서드를 정의할 때 override 키워드를 사용해야 합니다.

     class Parent {
         func someMethod() {
             print("부모 클래스의 메서드")
         }
     }
    
     class Child: Parent {
         override func someMethod() {
             // 부모 클래스의 메서드를 오버라이딩
             print("자식 클래스에서 오버라이딩된 메서드")
         }
     }
    

    위의 예제에서 Child 클래스는 Parent 클래스의 someMethod를 오버라이딩하고 있습니다.

  2. 부모 메서드 호출: 자식 클래스에서 오버라이딩된 메서드 내에서 부모 클래스의 동일한 메서드를 호출하려면 super 키워드를 사용합니다.

     class Child: Parent {
         override func someMethod() {
             super.someMethod() // 부모 클래스의 메서드 호출
             print("자식 클래스에서 오버라이딩된 메서드")
         }
     }
    

이와 같이 Swift에서는 자식 클래스에서 부모 클래스의 메서드를 오버라이딩하는 것이 가능합니다. 이를 통해 클래스의 기능을 유연하게 확장하고 수정할 수 있습니다.

더 많은 정보를 원하신다면 Swift 공식 문서를 참고하세요.