[C#] 18. 클래스 상속

Connected Brain·2025년 4월 25일

면접 질문 대비

목록 보기
18/60

클래스를 다른 클래스로 상속하기 위한 방법은 무엇인가요?

상속

  • C#에서 클래스는 다중 상속이 불가함
class Parent1 {}
class parent2 {}

class Child : Parent1, Parent2 {} // 다중 상속 불가
  • 다중 상속은 불가능하지만, 상속이 여러 계층을 가질 수는 있음
class Parent {}

class Child1 : Parent {}
class Child2 : Child1 {}

virtual

  • 부모 클래스의 메서드가 virtual을 활용해 선언된 경우, 자식 클래스에서는 해당 메서드를 override하여 구체화할 수 있음
  • 여기서 SOLID 원칙의 리스코프 치환 원칙을 지키기 위해서는 기존의 base.[메서드 이름]();을 유지하는 것이 필요함

abstract

  • 부모 클래스가 abstract 한정자를 가지고, 어떤 메서드나 프로퍼티가 abstract 한정자를 가지고 있다면 abstract가 아닌 자식 클래스에서는 해당 요소를 구현해야함

다형성과의 관계

  • 위 두 요소를 활용하면 객체 지향을 통해 얻을 수 있는 장점인 다형성을 구현할 수 있음

0개의 댓글