implicit karakteristiska
av ett objektorienterat program är Abstraktion
. Abstraktion är specificering av en abstrakt datatyp, som innehåller en specifikation av typen s datarepresentation Mössor och beteende Omdömen. I synnerhet
För våra syften, är en ny typ (inte inneboende språket) en abstrakt datatyp. Det är inte en av de primitiva datatyper som är inbyggda i programmeringsspråket (t.ex.
int, long, float, etc.). Omdömen
Skillnaden i föregående stycke är mycket viktigt. Datarepresentationen och beteendet hos de inneboende eller primitiva typer är redan känd för kompilatorn och kan inte ändras av programmeraren. Omdömen
representation och beteende av en abstrakt typ är inte känt till kompilatorn tills den specificeras av programmeraren och presenteras för kompilatorn på ett ändamålsenligt sätt.
Omdömen
Hur kan vi presentera specifikation av en abstrakt typ kompilatorn? Java och C ++ programmerare definiera datarepresentation Köpa och beteende
av en ny typ (fram specifikationen till kompilatorn) med hjälp av sökord klass Omdömen (C ++ programmerare kan också använda sökord struct Köpa och fackliga Omdömen).
Med andra ord, i Java och C ++, sökordet klass Omdömen används för att omvandla specifikationen av en ny typ till något som kompilatorn kan arbeta med; en uppsättning planer
så att säga.
Andra språk kan använda olika mekanismer för att presentera specifikationen av det abstrakta typen till kompilatorn.
När den nya typen är definierad , ett eller flera objekt av denna typ kan föras in att (instansieras, orsakade att ockupera minne). Omdömen
När instansieras, objektet sägs ha statlig Mössor och beteende
. statlig
av ett föremål bestäms av de aktuella värdena för sina data (instansvariabler) och beteende
av ett föremål bestäms av dess metoder (delfunktioner eller förekomstmetoder).
Till exempel, återigen ta några friheter, om vi ser ett GUI knapp som ett objekt, är det ganska lätt att visualisera tillstånd och beteende. Omdömen
En GUI-knappen kan oftast manifestera någon av ett antal olika tillstånd: storlek, placering, deprimerad bild, inte deprimerad bild, bildtext, etc. Var och en av dessa stater bestäms av data som lagras i instansvariabler Omdömen