Ontwerp van statische klasse
Notitie
Deze inhoud wordt opnieuw afgedrukt door toestemming van Pearson Education, Inc. van Framework Design Guidelines: Conventions, Idioms en Patterns for Reusable .NET Libraries, 2nd Edition. Die editie werd in 2008 gepubliceerd en het boek is sindsdien volledig herzien in de derde editie. Sommige informatie op deze pagina is mogelijk verouderd.
Een statische klasse wordt gedefinieerd als een klasse die alleen statische leden bevat (natuurlijk naast de instantieleden die zijn overgenomen van System.Object en mogelijk een privéconstructor). Sommige talen bieden ingebouwde ondersteuning voor statische klassen. In C# 2.0 en hoger, wanneer een klasse als statisch wordt gedeclareerd, wordt deze verzegeld, abstract en kunnen geen exemplaren worden overschreven of gedeclareerd.
Statische klassen zijn een compromis tussen puur objectgeoriënteerd ontwerp en eenvoud. Ze worden vaak gebruikt om snelkoppelingen te bieden naar andere bewerkingen (zoals System.IO.File), houders van uitbreidingsmethoden of functionaliteit waarvoor een volledige objectgeoriënteerde wrapper onwarrant is (zoals System.Environment).
✔️ GEBRUIK statische klassen spaarzaam.
Statische klassen mogen alleen worden gebruikt als ondersteunende klassen voor de objectgeoriënteerde kern van het framework.
❌ BEHANDEL STATISCHE klassen NIET als een diverse bucket.
❌ DECLAREER of overschrijf geen exemplaarleden in statische klassen.
✔️ Declareer statische klassen als verzegelde, abstracte en voeg een constructor voor een privé-exemplaar toe als uw programmeertaal geen ingebouwde ondersteuning heeft voor statische klassen.
© Delen 2005, 2009 Microsoft Corporation. Alle rechten voorbehouden.
Herdrukt door toestemming van Pearson Education, Inc. van Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition by Krzysztof Cwalina and Brad Abrams, published oct 22, 2008 by Addison-Wesley Professional als onderdeel van de Microsoft Windows Development Series.