OOP 12-24 Flashcards
Vad är objektorientering?
Ett sätt att organisera program genom att använda objekt.
Objekt har tre huvudegenskaper: tillstånd, beteende och identitet.
Vilka är de tre huvudegenskaperna hos ett objekt?
- Tillstånd (State)
- Beteende (Behavior)
- Identitet (Identity)
Hur kommunicerar objekt med varandra?
Genom att skicka meddelanden, motsvarande metodanrop i Java.
Vad är syftet med objektorientering?
- Förenkla stora system
- Göra kod återanvändbar
- Förbättra mjukvarukvaliteten
Vad är en klass?
En mall för att skapa objekt.
Vad är en instans?
Ett objekt som skapats från en klass.
Vilka aspekter bör identifieras för att skriva OO-program?
- Vilka objekt som finns
- Vilka egenskaper de har
- Hur de interagerar med varandra
Vad är attribut i objektorientering?
Variabler som lagrar information i objekt.
Vad är operationer i objektorientering?
Handlingar som kan utföras av objektet.
Vad är skillnaden mellan instansvariabler och klassvariabler?
- Instansvariabler: tillhör objekten, ofta private
- Klassvariabler: tillhör klassen och delas mellan objekten
Vad är inkapsling?
Skyddar data från att förändras av misstag.
Vad visar ett klassdiagram?
- Vilka klasser som finns
- Vilka attribut och metoder de har
- Hur klasserna är relaterade
Vad representerar ett objektdiagram?
Systemets objekt vid en viss tidpunkt under exekvering.
Vad visar ett sekvensdiagram?
- Objekt och deras livstid
- Ordningen på meddelanden mellan objekt
Vad används sekvensdiagram till?
- Identifiera hur kod ska implementeras
- Modellera lösningar
- Skapa stöd för att skriva bättre kod
Vad innebär ett statiskt diagram?
Visar struktur och organisation av ett system.
Vad innebär ett dynamiskt diagram?
Visar processer och händelser under körning.
Vad är en metodsignatur?
Består av åtkomstmodifierare, returtyp, namn och parameterlista.
Vad är skillnaden mellan parametrar och argument?
- Parametrar: anges i metodens signatur
- Argument: värden skickas vid metodanrop
Vad är en konstruktor?
Skapar nya objekt av en klass och har samma namn som klassen.
Vad innebär överlagring av konstruktorer?
Att ha flera konstruktorer med olika parametrar.
Hur skapar man ett objekt av en klass?
Använder nyckelordet ‘new’ tillsammans med konstruktorn.
Vad är syftet med en driver-klass?
Att starta programmet och köra koden.
Vad är ett beroende mellan klasser?
En klass A är beroende av en klass B om A skapar en instans av B eller anropar en metod i B.