Skip to main content

Hvad er en klassearray?

I objektorienteret computerprogrammering kan en klassearray henvise til en af to typer datastrukturer.Nogle programmerere bruger udtrykket til at beskrive en standard array -datatype, der består af elementer, der er objektforekomster af en given klasse.Det kan også være et indkapslet objekt for klassens array, også kendt som et indpakningsobjekt, der bruges i stedet for en skalararray for at stille en række metoder til rådighed til brug til styring af matrixen.Selvom der muligvis er mere kompleks funktionalitet, er Wrapper Array -klassen virkelig ikke anderledes i koncept end indpakningsobjekter til andre skalære datatyper, såsom heltal eller tegn.I begge tilfælde kan strukturen kun bruges inden for rammerne af et objektorienteret programmeringssprog, der understøtter klasser.

Den første definition af en klassearray identificerer den som en standard array -datatype, der erklæres for at holde objekter, der er instantieret fra en enkeltspecifik klasse.Dette gøres ofte, når man holder en fast række objekter, især når det maksimale antal objekter er kendt, så matrixen ikke erklæres med en overdreven mængde elementer.De polymorfe mekanismer i objektorienteret programmering betyder, at brugen af en klassearray kan være meget dynamisk, fordi den kan indeholde en generisk superklasse, hvilket tillader en række underklasser at blive holdt som elementer på trods af deres forskellige implementeringer.En komplikation, når man bruger en klassearray, kan imidlertid opstå, når antallet af elementer er ukendt og enten vokser større end den definerede størrelse på matrixen, eller er meget lille, hvilket efterlader spildt hukommelsesrum, der er tildelt med matrixen.En løsning er at bruge indsamlingstype-objekter såsom vektorer eller arrayylister i stedet for en skalær matrix, der ikke kan ændres.og skift arrayet.Nogle sprog implementerer meget effektiv sorterings- og søgealgoritmer inden for en klassearrayindpakning.En anden fordel ved at bruge en matrix, der implementeres som en klasse, er, at klassen let kan overføres og ændres ved forskellige funktioner og metoder, især hvis basisarray -klassen er stammende fra en generisk objektklasse.Klassearrayet er ofte grundlaget for andre typer array-baserede klasser i et programmeringsbibliotek, såsom en ArrayList eller en hash-tabel.Derudover tillader nogle sprog, at Array -klassen udvides, hvilket betyder, at en bruger kan omdefinere nogle af de grundlæggende metoder med mere specialiserede implementeringer, mens de bevarer klassens kernefunktionalitet.