Skip to main content

Vad är en kapslad klass?

I objektorienterad programmering (OOP) är en kapslad klass en klass som är helt inne i en annan klass.En mängd datorspråk har stöd för denna objektorienterade struktur, inklusive C ++ och Java-programmeringsspråket.Om en kapslad klass inte förklaras statisk kan den också kallas en inre klass.En klass kan innehålla valfritt antal inre klasser, och varje inre klass kan också innehålla inre klasser.Kapslade klasser kan vara mycket användbara, men de kan också göra klassstrukturer komplicerade snabbt, så det är bäst för dem att användas som en del av en noggrann plan så att de inte blir onödigt komplexa.

En kapslad klass är ofta till hjälp att kapsla inSmå grupper av funktioner eller variabler som är användbara för en annan specifik klass.Till exempel, om klass A innehåller en grupp metoder som endast den använder, kan dessa metoder grupperas i inre klass B. Metoder i den inre klassen har tillgång till de yttre klassvariablerna och metoderna samtidigt som de upprätthåller sina egna variabler eller konstanter vid behov.En kapslad klass kan användas som antingen en funktionell eller organisatorisk konstruktion;Även om det är användbart att kapsla in funktionaliteten, är det lika användbart som ett organisatoriskt verktyg.Idealisk användning av inre klasser kommer båda att gruppera relaterade funktionalitet och organisera kod för enklare läsbarhet och förståelse.

Kommentarer bör göras på en kapslad klass precis som det görs på den yttre klassen;Det är lätt för nybörjare att förvirra inre klasser med metoder och glömma detta.När du kommenterar en kapslad klass är det bäst att betraktas som en toppklass och att kommentera den i enlighet därmed.Inre klasskommentarer ger också en möjlighet för programmeraren att klargöra den inre klassens funktionalitet och skälen bakom dess organisationsschema.Flera inre klasser kan existera inom en yttre klass, så det är särskilt viktigt för programmeraren att kommentera var och en tydligt.

Om en kapslad klass inte förklaras statisk, måste en instans av den yttre klassen uttryckligen skapas innan en instans av den instansen avinre klass skapas.För inre klasser som förklaras statiska är detta inte sant.En statisk kapslad klass kan vanligtvis skapas med färre tangenttryckningar och kan ha ett bredare omfattning än en enkel inre klass, så statiska kapslade klasser är användbara för att skapa enkla att få åtkomst till verktygsmetoder, till exempel fabriker eller enkla fristående metoder med breda tillämpningar.

Det är ofta bra för utvecklare när kapslade klasser beskrivs med det enhetliga modelleringsspråket.Det enhetliga modelleringsspråket kommenterar och illustrerar klassstruktur och beteende på ett entydigt sätt, ofta med diagram.Kapslade klasser ges oberoende beskrivningar från de yttre klasserna där de bor, så det är mycket enkelt för deras funktionalitet att identifieras och analyseras.Även om det inte krävs för att en kapslad klass kommer att kommenteras på detta sätt, är det ofta bättre för programmerare att göra fel på sidan av större detalj.