Condividi tramite


Classi non sealed

Nota

Questo contenuto è ristampato con l'autorizzazione di Pearson Education, Inc. da Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition. Tale edizione è stata pubblicata nel 2008 e il libro è stato interamente revisionato nella terza edizione. Alcune delle informazioni contenute in questa pagina potrebbero non essere aggiornate.

Le classi sealed non possono essere ereditate e impediscono l'estendibilità. Al contrario, le classi che possono essere ereditate sono chiamate classi unsealed.

✔️ CONSIDERARE che l'uso di classi unsealed senza membri aggiunti virtuali o protetti rappresentano un ottimo modo per fornire a un framework un’ estendibilità economica e tuttavia molto apprezzata.

Spesso gli sviluppatori vogliono ereditare da classi unsealed in modo da aggiungere membri pratici, quali ad esempio costruttori personalizzati, nuovi metodi o overload di metodi. Ad esempio, System.Messaging.MessageQueue non è unsealed e consente agli utenti di creare code personalizzate che per impostazione predefinita si indirizzano su un percorso di coda specifico o di aggiungere metodi personalizzati che semplificano l'API per scenari specifici.

Per impostazione predefinita le classi sono unsealed nella maggior parte dei linguaggi di programmazione, e questa è anche l’impostazione predefinita consigliata per gran parte delle classi nei framework. L'estendibilità offerta dai tipi unsealed è molto apprezzata dagli utenti di framework e, dati i costi dei test relativamente bassi associati ai tipi unsealed, è anche abbastanza economica.

Parti protette da copyright © 2005, 2009 Microsoft Corporation. Tutti i diritti sono riservati.

Ristampato con l'autorizzazione di Pearson Education, Inc. da Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2a edizione di Krzysztof Cwalina and Brad Abrams, pubblicato il 22 ottobre 2008 da Addison-Wesley Professional nella collana Microsoft Windows Development Series.

Vedi anche