[swift] 상속을 통해 새로운 클래스를 생성하는 방법

상속은 객체지향 프로그래밍에서 중요한 개념 중 하나입니다. 스위프트에서는 기존 클래스를 기반으로 새로운 클래스를 만들 수 있습니다.

기존 클래스 정의하기

class Animal {
    var name: String
    
    init(name: String) {
        self.name = name
    }
    
    func makeSound() {
        print("Animal sound")
    }
}

새로운 클래스 생성하기

class Dog: Animal {
    var breed: String
    
    init(name: String, breed: String) {
        self.breed = breed
        super.init(name: name)
    }
    
    override func makeSound() {
        print("Bark!")
    }
}

위의 예제에서 Dog 클래스는 Animal 클래스를 상속받았습니다. Dog 클래스에는 breed 속성과 makeSound 메서드가 추가되었습니다.

이제 Dog 클래스의 인스턴스를 생성하여 상속이 제대로 동작하는지 확인해볼 수 있습니다.

let myDog = Dog(name: "Buddy", breed: "Golden Retriever")
print(myDog.name) // 출력: Buddy
myDog.makeSound() // 출력: Bark!

상속을 통해 새로운 클래스를 만들면 코드의 재사용성을 높이고 유지보수가 편리해집니다. 상속을 잘 이용하여 객체지향적인 프로그래밍을 하는 방법에 대해 더 배우고 싶다면, 관련 문서를 읽어보는 것을 추천합니다.

References