로딩
요청 처리 중입니다...

[c#] sealed 상속 봉인

 [c#] sealed 상속 봉인

c#에서는 sealed를 통해 상속을 봉인(방지)할 수 있다. 여기서 봉인이라는 것은 더이상 상속을 못받는걸 의미한다.

만약, 상속으로 계층구조가 복잡한 경우를 생각해보자. 상속을 통해 특정 코드를 재정의할때 구조가 복잡해 어디까지 재정의를 해야하는지 파악하기 어렵다.

그러므로 sealed를 통해 재정의를 못하게 봉인하는 것이다. 불필요한 재정의를 제어하므로 구조가 명확해 지게된다. sealed 사용 예시 class SealedBase { } // sealed때문에 SealedAA 클래스를 상속하지 못한다. sealed class SealedAA : SealedBase { } // 에러 // class SealedBB : SealedAA { } CS0509 컴파일러 오류 CS0418 컴파일러 오류 CS0238 컴파일러 오류 추상 클래스, 추상 메서드 또는 가상메서드는 상속해서 재정의를 해야하므로 sealed와 같이 사용하면 오류가 발생한다. class SealedBase { p...

# CS0238 # 씨샵 # 상속봉인 # 상속방지 # sealed # override # c샾 # c샵 # CS0509 # CS0418 # 재정의