봉인 된 클래스

작가: Lewis Jackson
창조 날짜: 8 할 수있다 2021
업데이트 날짜: 25 6 월 2024
Anonim
C #-봉인 된 클래스
동영상: C #-봉인 된 클래스

콘텐츠

정의-봉인 클래스 란 무엇입니까?

C #의 봉인 클래스는 클래스에서 상속 할 수 없지만 인스턴스화 할 수있는 클래스입니다.


봉인 된 클래스의 디자인 의도는 클래스가 특수화되었으며 상속을 통해 추가 기능을 제공하여 해당 동작을 대체하도록 클래스를 확장 할 필요가 없음을 나타냅니다. 봉인 클래스는 종종 프로그램 전체에서 사용해야하지만 변경없이 논리를 캡슐화하는 데 사용됩니다.

봉인 클래스는 대부분 의도하지 않은 파생으로 인해 파생 클래스가 봉인 클래스에 제공된 구현을 손상시킬 수 없도록하여 보안상의 이유로 사용됩니다. 봉인 클래스는 기본 클래스를 구성 할 수 없으므로 봉인 클래스 호출은 봉인 클래스 인스턴스에서 가상 구성원 함수를 비가 상 호출로 호출하는 것과 같은 특정 런타임 최적화를 가능하게하기 때문에 약간 빠릅니다. 봉인 된 클래스는 클래스를 봉인 된 유형에서 봉인되지 않은 상태로 변경하면서 호환성을 유지하지 않음으로써 버전 관리에 도움이됩니다.

.NET 프레임 워크 라이브러리의 일부 주요 클래스는 주로 이러한 클래스의 확장 성을 제한하기 위해 봉인 된 클래스로 설계되었습니다.

Microsoft Azure 및 Microsoft 클라우드 소개 | 이 가이드를 통해 클라우드 컴퓨팅에 관한 모든 내용과 클라우드에서 비즈니스를 마이그레이션하고 운영하는 데 Microsoft Azure가 어떻게 도움이되는지 알아 봅니다.

Techopedia는 봉인 클래스를 설명합니다

암시 적으로 봉인 된 구조체와 달리 봉인 된 클래스는 클래스의 우연한 상속을 막기 위해 "sealed"키워드로 선언됩니다. 봉인 된 클래스는 공용 수준의 액세스 가능한 메서드가있는 경우에만 유용 할 수 있습니다. 추상 클래스는 추상 메서드 및 속성에 대한 구현을 제공하는 다른 클래스에서 파생되었으므로 봉인 클래스는 추상 클래스가 될 수 없습니다.

예를 들어, 봉인 된 클래스 인 DatabaseHelper는 개방형 및 폐쇄 형 데이터베이스 연결, 데이터 페치 및 업데이트 등 데이터베이스 관련 조치의 기능을 서비스 할 수있는 특성 및 메소드로 설계 할 수 있습니다. 파생 클래스를 재정 의하여 변조되지 않으면 봉인 클래스로 디자인 할 수 있습니다.


밀봉은 확장 성의 이점을 제한하고 라이브러리 유형의 사용자 정의를 방지합니다. 따라서 밀봉의 영향을주의 깊게 측정 한 후에는 등급을 밀봉해야합니다. 수업을 봉인하기 위해 고려해야 할 기준 목록은 다음과 같습니다.
  • 클래스는 정적입니다
  • 이 클래스에는 민감한 정보를 나타내는 상속 된 멤버가 포함됩니다.
  • 리플렉션 메소드를 통해 속성을 검색하기 위해 클래스를 조회합니다.
  • 이 클래스는 인봉해야하는 많은 가상 멤버를 상속합니다.
이 정의는 C #으로 작성되었습니다.