다음을 통해 공유


봉인되지 않은 클래스

봉인되지 않은 클래스에서는 다른 클래스가 상속될 수 있습니다. 보호된 멤버, 가상 멤버와 같은 많은 다른 확장성 메커니즘에서는 클래스를 봉인하지 않아야 합니다. 이러한 추가 메커니즘을 통해 형식의 기능을 추가하거나 사용자 지정할 수 있지만 상당한 비용이 소요됩니다. 봉인되지 않은 클래스는 추가 확장성 메커니즘이 없어도 많은 개발 시나리오에서 유용하게 활용할 수 있습니다.

봉인되지 않은 클래스는 가상 멤버 또는 보호된 멤버가 없어도 저렴한 비용으로 프레임워크에 우수한 확장성을 제공합니다.

대부분의 클래스는 기본적으로 봉인해서는 안 됩니다. 이렇게 함으로써 개발자가 해당 특정 시나리오에 따라 클래스를 사용자 지정할 수 있습니다. 예를 들어, 클래스가 봉인되지 않는 경우 개발자가 해당 클래스에서 파생된 형식에 생성자를 추가하고 이 생성자를 사용하여 기본 클래스 속성을 시나리오에 필요한 값으로 초기화할 수 있습니다. 개발자는 또한 시나리오별 기본값을 전달하는 메서드 오버로드를 추가할 수 있습니다.

Portions Copyright 2005 Microsoft Corporation. All rights reserved.

Portions Copyright Addison-Wesley Corporation. All rights reserved.

디자인 지침에 자세한 내용은 참조를 "Framework 디자인 지침: 규칙, 숙어, 및 재사용에 대 한 패턴입니다.NET 라이브러리"도 서 Krzysztof Cwalina와 Brad Abrams, 게시 Addison-wesley, 2005.

참고 항목

개념

클래스를 봉인하여 확장성 제한

기타 리소스

클래스 라이브러리 개발을 위한 디자인 지침

확장성을 위한 디자인