[swift] 부모 클래스에서 정의된 프로토콜을 자식 클래스에서 구현하는 방법

아래는 부모 클래스에서 정의된 프로토콜을 자식 클래스에서 구현하는 간단한 예제입니다.

// 프로토콜 정의
protocol Printable {
    func printMessage()
}

// 부모 클래스
class Parent {
    var name: String
    
    init(name: String) {
        self.name = name
    }
    
    // 프로토콜을 준수하는 메서드
    func printMessage() {
        print("Parent class - Hello, my name is \(name)")
    }
}

// 자식 클래스
class Child: Parent, Printable {
    // 프로토콜 메서드를 구현
    func printMessage() {
        print("Child class - Hello, my name is \(name)")
    }
}

let parent = Parent(name: "John")
let child = Child(name: "Alex")

parent.printMessage() // 출력: Parent class - Hello, my name is John
child.printMessage() // 출력: Child class - Hello, my name is Alex

위의 예제에서 부모 클래스인 ParentPrintable 프로토콜을 따르는 printMessage() 메서드를 구현했습니다. 자식 클래스인 ChildParent 클래스를 상속하고, Printable 프로토콜을 따르는 printMessage() 메서드를 재정의하여 자신의 동작으로 변경하였습니다.

이와 같이, 부모 클래스에 정의된 프로토콜을 자식 클래스에서 구현하는 것은 Swift에서 클래스 계층구조를 효과적으로 활용하는 방법 중 하나입니다.