더북(TheBook)

3.   Cat 클래스를 상속하는 MyCat 클래스를 만들려고 시도합니다. Cat 클래스는 sealed 클래스가 붙은 최종 클래스이기에 상속에 사용할 수 없어 컴파일러 레벨에서 바로 에러가 발생합니다.

> class MyCat : Cat
. {
.     //sealed 키워드가 붙은 클래스는 상속할 수 없음
. }
(1,7): error CS0509: 'MyCat': sealed 형식 'Cat'에서 파생될 수 없습니다.

4.   봉인 클래스 자체는 상속에 사용되지 않을 뿐 일반적인 클래스와 동일합니다.

> Cat cat = new Cat();
. cat.Eat();
밥을 먹습니다.

이 코드처럼 봉인 클래스인 Cat 클래스를 상속하는 MyCat 클래스를 만들면 컴파일러는 자동으로 에러를 발생시킵니다. 일반적으로 봉인 클래스를 만들지는 않지만, 닷넷의 많은 내장 클래스 중에는 봉인 클래스로 되어 있어 상속을 허용하지 않는 클래스들이 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.