[swift] 상속을 통해 계층적인 클래스 구조를 생성하는 방법
아래는 스위프트에서 상속을 통해 계층적인 클래스 구조를 생성하는 간단한 예제 코드입니다.
class Animal {
var name: String
init(name: String) {
self.name = name
}
func makeSound() {
// 동물의 울음소리를 출력
}
}
class Dog: Animal {
var breed: String
init(name: String, breed: String) {
self.breed = breed
super.init(name: name)
}
override func makeSound() {
print("멍멍!")
}
}
// Dog 클래스의 인스턴스 생성
let myDog = Dog(name: "맥스", breed: "푸들")
myDog.makeSound() // 결과: "멍멍!"
위 예제에서 Dog
클래스는 Animal
클래스를 상속받았습니다. 이를 통해 Dog
클래스는 Animal
클래스의 속성과 메서드를 상속받아 사용할 수 있습니다. 또한 필요에 따라 메서드를 재정의하여(override) 자체적인 구현을 추가할 수도 있습니다.
이렇게 상속을 통해 클래스를 확장하고, 계층적인 구조를 구현할 수 있습니다.