[swift] 상위 클래스와 하위 클래스의 관계

상속은 객체지향 프로그래밍에서 중요한 개념 중 하나입니다. 클래스 간에 상속 관계가 형성될 때, 상위 클래스와 하위 클래스라는 용어가 사용됩니다. 상위 클래스는 다른 클래스로부터 상속받는 클래스를 가리키고, 하위 클래스는 다른 클래스에게 상속받는 클래스를 가리킵니다.

상위 클래스 (Superclass)

상위 클래스는 다른 클래스에게 상속을 주는 클래스입니다. 상위 클래스는 자신의 특징을 하위 클래스에게 물려줄 수 있습니다. 이는 코드 재사용성을 높여주고, 일관성 있는 프로그래밍을 가능하게 합니다.

class Animal {
    var name: String

    init(name: String) {
        self.name = name
    }

    func makeSound() {
        print("Some sound")
    }
}

위 예제에서 Animal 클래스는 상위 클래스로 정의되어 있습니다.

하위 클래스 (Subclass)

하위 클래스는 다른 클래스로부터 상속을 받는 클래스입니다. 하위 클래스는 상위 클래스의 특징을 물려받아 새로운 특징을 추가할 수 있습니다.

class Dog: Animal {
    var breed: String

    init(name: String, breed: String) {
        self.breed = breed
        super.init(name: name)
    }

    override func makeSound() {
        print("Woof!")
    }
}

위 예제에서 Dog 클래스는 Animal 클래스로부터 상속을 받는 하위 클래스로 정의되어 있습니다.

이처럼, 상위 클래스와 하위 클래스의 관계를 이해하고 활용하는 것은 객체지향 프로그래밍에서 중요한 요소입니다.

결론

상위 클래스와 하위 클래스의 관계를 이용하여 코드의 재사용성을 높일 수 있고, 유연하고 확장 가능한 구조를 가진 프로그램을 작성할 수 있습니다.

참고 문헌: Swift.org - Inheritance