[swift] 상속

Swift에서는 클래스 간 상속을 통해 코드를 재사용하고 확장할 수 있습니다. 이번에는 Swift에서의 클래스 상속에 대해 알아보겠습니다.

상속 기본

상속을 위해선 부모 클래스를 만들고, 이 클래스를 기반으로 하는 자식 클래스를 만들어야 합니다. 자식 클래스는 부모 클래스의 속성과 메서드를 물려받습니다.

class ParentClass {
    var property: String
    
    init(property: String) {
        self.property = property
    }
    
    func someMethod() {
        // 메서드 구현
    }
}

class ChildClass: ParentClass {
    // 자식 클래스의 추가적인 속성과 메서드들
}

메서드 재정의

자식 클래스에서 부모 클래스의 메서드를 재정의할 수 있습니다. 이때 override 키워드를 사용합니다.

class ChildClass: ParentClass {
    override func someMethod() {
        // 메서드 재정의 구현
    }
}

final 클래스와 메서드

상속을 금지하고 싶을 때에는 클래스나 메서드 선언 앞에 final 키워드를 붙이면 됩니다.

final class FinalClass {
    // 클래스 내용
}

class ParentClass {
    final func someFinalMethod() {
        // 메서드 내용
    }
}

상속으로 코드를 재사용하고 확장하면서 유연하고 유지 보수성 좋은 코드를 작성할 수 있습니다. Swift의 상속을 이용해 프로그래밍을 하면 더 많은 가능성을 만들어낼 수 있습니다.

참고문헌: The Swift Programming Language - Inheritance