Vad är en klassuppsättning?

I objektorienterad datorprogrammering kan en klassgrupp hänvisa till en av två typer av datastrukturer. Vissa programmerare använder termen för att beskriva en standardmatrisdatatyp som består av element som är objektinstanser av en given klass. Det kan också vara ett inkapslat objekt i klassuppsättningen, även känt som ett omslagobjekt, som används i stället för en skalarray för att göra en mängd olika metoder tillgängliga för användning i hanteringen av matrisen. Även om det kan finnas mer komplicerad funktionalitet är klassen för wrapperray egentligen inte annorlunda i begrepp än wrapperobjekt för andra skalartatatyper som heltal eller tecken. I båda fallen kan strukturen endast användas inom ramen för ett objektorienterat programmeringsspråk som stöder klasser.

Den första definitionen av en klassgrupp identifierar den som en standardmatrisdatatyp som förklaras innehålla objekt instansierade från en specifik klass. Detta görs vanligtvis när man håller en uppsättning serie objekt, särskilt när det maximala antalet objekt är känt så att matrisen inte deklareras med en alltför stor mängd element. De polymorfa mekanismerna i objektorienterad programmering innebär att användningen av en klassuppsättning kan vara mycket dynamisk, eftersom den kan innehålla en generisk superklass, vilket gör att en mängd olika underklasser kan hållas som element trots deras olika implementationer. En komplikation när man använder en klassuppsättning kan emellertid uppstå när antalet element är okänt och antingen blir större än den definierade storleken på matrisen, eller är mycket liten, vilket lämnar bortkastat minnesutrymme tilldelat matrisen. En lösning är att använda samlingstypobjekt som vektorer eller arraylister istället för en skalarray som inte kan ändras.

Den andra definitionen av en klassuppsättning är ett objekt som innehåller en skalarray men också innehåller ett antal metoder för att manipulera och ändra arrayen. Vissa språk implementerar mycket effektiva sorterings- och sökalgoritmer inom en klassuppsättning. En annan fördel med att använda en matris som implementeras som en klass är att klassen enkelt kan passeras och ändras med olika funktioner och metoder, särskilt om basmatrisklassen härstammar från en generisk objektklass. Klassuppsättningen är ofta grunden för andra typer av matrisbaserade klasser i ett programmeringsbibliotek, till exempel en arraylist eller ett hashbord. Dessutom tillåter vissa språk att matrisklassen kan utvidgas, vilket innebär att en användare kan omdefiniera några av de grundläggande metoderna med mer specialiserade implementationer samtidigt som klassens kärnfunktionalitet behålls.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?