Machineboy空

C# 상속, 다형성(Polymolphism) 본문

언어/C#

C# 상속, 다형성(Polymolphism)

안녕도라 2025. 2. 3. 12:49

기반 클래스(Base)와 파생 클래스(Derived)

Vehicle Car
기반 클래스(base) 파생 클래스(derived)
parent  

 

코드의 생산성이 높아질 수 있다.

예를 들어 300개의 동물 클래스가 모두 Mammal 클래스로부터 Wash() 메소드를 상속받아 동일하게 사용할 수 있다.


abstract, virtual, protected, base, private

  • abstract : 자식 클래스에서 꼭 override해서 써야 하는 멤버가 있는 클래스
  • virtual : override될 수 있는 멤버라는 키워드
  • protected : 부모 클래스를 상속한 클래스에서만 접근이 가능한 멤버라는 키워드
  • base: 자식 클래스에서 부모 클래스에 접근하는 방법
  • private: 부모 클래스에서만 보임.


파생 클래스(derived)의 생성(Constructor) 과정

  • 기반 클래스(base)의 생성자 → 파생 클래스(derived)의 생성자 → 파생 클래스(derived)의 종료자 → 기반 클래스(base)의 종료자

파생 클래스의 생성자는 본인을 실행하기 전, 자동으로 부모 클래스의 생성자를 먼저 호출한다.


다형성(Polymorphism)

객체가 여러 형태를 가질 수 있음을 의미

  • 하나의 부모 클래스를 상속한 여러 자식 클래스에서 각자 다른 방식으로 함수를 실행할 수 있다는 것.
  • 기반 클래스를 설계할 때는 파생 클래스의 모습까지 고려해야 한다.



'언어 > C#' 카테고리의 다른 글

C# 문자 형식 char, 문자열 형식 string, String Builder  (0) 2025.02.06
C# 정수형 (Integral Number)  (0) 2025.02.03
C# Generic Types  (0) 2025.01.24
LINQ  (0) 2025.01.23
Visual Studio 기본 환경 세팅  (0) 2025.01.23