728x90
안녕하세요!
이번 글에서는 C#에서의 상속과 다형성에 대해 알아보겠습니다.
상속과 다형성은 객체지향 프로그래밍의 중요한 개념으로, 코드의 재사용성과 유연성을 높여줍니다.
상속
- 상속은 클래스 간에 계층 구조를 만들어 기존 클래스의 속성과 메서드를 다른 클래스에서 재사용할 수 있도록 해줍니다.
- 기존 클래스를 부모 클래스 또는 상위 클래스라고 하고, 상속 받는 클래스를 자식 클래스 또는 하위 클래스라고 합니다.
class Animal
{
public string Name { get; set; }
public void MakeSound()
{
// 동물의 소리 출력
}
}
class Dog : Animal
{
public void Bark()
{
// 개의 짖는 소리 출력
}
}
- Animal 클래스는 Name 속성과 MakeSound() 메서드를 가지고 있습니다.
- 이 클래스를 상속받아 Dog 클래스를 정의하였습니다.
- Dog 클래스에는 Bark() 메서드가 추가되었습니다.
다형성
- 다형성은 동일한 메서드 이름을 가진 다양한 클래스의 객체가 각자의 방식으로 해당 메서드를 구현하도록 허용하는 개념입니다.
- 이를 통해 개별 객체의 타입에 따라 다른 동작을 수행할 수 있습니다.
Animal animal1 = new Dog();
Animal animal2 = new Cat();
- animal1.MakeSound(); // 개의 짖는 소리 출력
- animal2.MakeSound(); // 고양이의 울음소리 출력
- animal1 변수는 Dog 클래스의 객체를 참조하고 있습니다.
- animal2 변수는 Cat 클래스의 객체를 참조하고 있습니다.
- MakeSound() 메서드를 호출하면 각각의 객체의 타입에 따라 다른 동작이 수행됩니다.
상속과 다형성의 장점
- 상속과 다형성을 활용하면 코드의 재사용성을 높일 수 있습니다.
- 공통적인 속성과 메서드를 부모 클래스에 구현하고, 이를 다른 클래스에서 상속받아 필요한 부분만 추가 또는 변경하여 사용할 수 있습니다.
- 이는 코드의 중복을 줄이고 유지보수를 용이하게 만들어줍니다.
이번 포스트에서는 C#에서의 상속과 다형성에 대해 알아보았습니다.
상속은 클래스 간에 계층 구조를 만들어 코드의 재사용성을 높여주며, 다형성은 동일한 메서드 이름을 가진 객체들이 각자의 방식으로 동작하도록 허용합니다.
다음 포스트에서는 인터페이스와 추상 클래스에 대해 알아보도록 하겠습니다.
감사합니다!
728x90
'[C#] > 프로그래밍 기초' 카테고리의 다른 글
[C#] 프로그래밍 기초 : 예외처리 (15) | 2023.06.27 |
---|---|
[C#] 프로그래밍 기초 : 인터페이스와 추상 클래스 (25) | 2023.06.26 |
[C#] 프로그래밍 기초 : 클래스와 객체 (20) | 2023.06.25 |
[C#] 프로그래밍 기초 : 가비지 컬렉터 (22) | 2023.06.23 |
[C#] 프로그래밍 기초 : 배열과 함수 (20) | 2023.06.23 |