Classes não seladas
Observação
Este conteúdo é reimpresso com permissão da Pearson Education, Inc. de Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition. Essa edição foi publicada em 2008 e, desde então, o livro foi totalmente revisado na terceira edição. Algumas das informações nesta página podem estar desatualizadas.
As classes seladas não podem ser herdadas e impedem a extensibilidade. Por outro lado, as classes que podem ser herdadas são chamadas de classes não seladas.
✔️ CONSIDERE usar classes não seladas sem membros virtuais ou protegidos adicionais como uma ótima maneira de fornecer extensibilidade barata, mas muito valorizada, a uma estrutura.
Os desenvolvedores geralmente querem herdar de classes não seladas para adicionar membros de conveniência, como construtores personalizados, novos métodos ou sobrecargas de método. Por exemplo, System.Messaging.MessageQueue
não está selado, portanto, permite que os usuários criem filas personalizadas padrão para um caminho de fila específico ou adicionem métodos personalizados que simplificam a API para cenários específicos.
As classes não são seladas por padrão na maioria das linguagens de programação, e esse também é o padrão recomendado para a maioria das classes em estruturas. A extensibilidade proporcionada por tipos não selados é muito apreciada pelos usuários da estrutura e é relativamente barata de fornecer devido aos custos de teste relativamente baixos associados a tipos não selados.
Portions © 2005, 2009 Microsoft Corporation. Todos os direitos reservados.
Reimpresso com permissão da Pearson Education, Inc. das Diretrizes de Design do Framework: convenções, linguagens e padrões para bibliotecas do .NET reutilizável, 2ª edição por Krzysztof Cwalina e Brad Abrams, publicado em 22 de outubro de 2008 por Addison-Wesley Professional como parte da série de desenvolvimento do Microsoft Windows.