objektorienterad programmering begrippen

En sammanställning av viktiga begrepp inom objektorienterad programmering, med korta och koncisa förklaringar för studenter.

EliasPandar3·36 flashcards·36 frågor
universitetcomputer_scienceprogramming
0
Kan
1 / 36
0
Övar
Framsida

Vad är ett objekt?

Tryck för att vända
Baksida

Ett objekt är en instans av en klass som har tillstånd (attribut) och beteende (metoder).

Tryck för att vända
Kan
Övar fortfarande

Quiz(36 frågor)

Fråga 1 av 36

1. Vad är ett objekt?

Begrepp i det här studiesetet(36)

Grundläggande begrepp(16)

Vad är ett objekt?

Ett objekt är en instans av en klass som har tillstånd (attribut) och beteende (metoder).

Vad innebär inkapsling?

Inkapsling är att dölja objektets interna tillstånd och endast exponera en offentlig API för interaktion.

Vad är en klass?

En klass är en mall för att skapa objekt, definierar attribut och metoder.

Vad är arv?

Arv gör att en klass kan ärva egenskaper och metoder från en annan klass, vilket främjar återanvändning.

Fyll i blank: En ______ är en typ av metod som kan överskrida en metod i en basklass.

En virtuell metod.

Vad är polymorfism?

Polymorfism gör att en metod kan ha olika implementationer beroende på objektets typ.

Sant eller falskt: En klass kan ha flera konstruktörer.

Sant. Detta kallas överlagring av konstruktörer.

Vad är en konstruktor?

En konstruktor är en speciell metod som anropas för att skapa ett objekt.

Jämför attribut och metoder.

Attribut är data i objektet, metoder är funktioner som manipulerar dessa data.

Vad är ett gränssnitt?

Ett gränssnitt definierar en uppsättning metoder utan implementation, används för att säkerställa att klasser implementerar specifika metoder.

Vad är komposition?

Komposition innebär att en klass innehåller instanser av andra klasser, vilket skapar en 'har en' relation.

Sant eller falskt: Objekt kan skapa objekt.

Sant. Ett objekt kan skapa andra objekt inom sina metoder.

Vad är en abstrakt klass?

En abstrakt klass kan inte instansieras och används för att definiera gemensamma drag för dess subklasser.

Vad är en metod?

En metod är en funktion som definieras inom en klass och beskriver beteendet hos objektet.

Orsak → Effekt: Vad händer om ett objekt inte har en konstruktor?

Objektet kan inte skapas korrekt, vilket leder till fel i programmet.

Fyll i blank: En ______ gör att en klass kan implementera flera gränssnitt.

En klass kan implementera flera gränssnitt.

Avancerade koncept(20)

Vad är polymorfism?

Förmågan för olika objekt att behandlas som om de tillhör samma typ. - Metoder kan anpassas baserat på objektets typ.

Skillnad mellan överlagring och överskrivning?

Överlagring: samma metodnamn, olika parametrar. Överskrivning: samma metodnamn, samma parametrar, i subklass.

Vad är ett gränssnitt?

En uppsättning metoder som en klass måste implementera. - Ingen implementation, endast metodsignaturer.

True or False: Abstrakta klasser kan instansieras.

False. Abstrakta klasser kan inte instansieras, endast ärvas.

Fyll i blank: Ett _______ är en klass som inte kan instansieras.

Abstrakt klass.

Vad innebär kapsling?

Skydd av klassens tillstånd. - Använda privata och skyddade variabler.

Exempel på en designprincip inom OOP?

Single Responsibility Principle: Varje klass ska ha ett enda ansvar.

Vad är en konstruktor?

En speciell metod som anropas vid skapandet av ett objekt. - Initierar objektets tillstånd.

Skillnad mellan komposition och arv?

Komposition: en klass innehåller en annan. Arv: en klass ärver från en annan.

Vad är en statisk metod?

En metod som tillhör klassen snarare än ett objekt. - Anropas med klassens namn.

Exempel på polymorfism i kod?

```java class Djur { void ljud() { System.out.println("Djurens ljud"); } } class Hund extends Djur { void ljud() { System.out.println("Voff!"); } } ```

Vad innebär delegation?

Överföring av ansvar från ett objekt till ett annat objekt. - Används för att uppnå återanvändning.

True or False: En klass kan implementera flera gränssnitt.

True. En klass kan implementera flera gränssnitt i Java.

Vad är ett abstrakt gränssnitt?

Ett gränssnitt som definierar metoder utan implementation. - Måste implementeras av klasser.

Fyll i blank: I OOP representerar ett _______ ett konkret exempel av en klass.

Objekt.

Vad är en virtuell metod?

En metod som kan överskrivas i en subklass. - Används för att stödja polymorfism.

Exempel på en designmönster?

Observer: definierar ett beroende mellan objekt så att när ett objekt ändras, notifieras alla beroende objekt.

Vad är en property?

En egenskap i en klass som definierar tillståndet. - Används ofta med getter och setter.

Skillnad mellan public och private modifierare?

Public: tillgänglig för alla. Private: endast tillgänglig inom klassen.

Vad är en callback-funktion?

En funktion som skickas som argument till en annan funktion och anropas senare.

Frågor i det här studiesetet(36)

1. Vad är ett objekt?

A.En instans av en klass med tillstånd och beteende.
B.En typ av klass som inte kan instansieras.
C.En metod som beskriver objektets funktioner.
D.En datatyp som används för att lagra information.

2. Vad definierar ett gränssnitt i objektorienterad programmering?

A.En uppsättning metoder som en klass måste implementera.
B.En klass som endast kan ärvas.
C.En metod som inte har någon implementation.
D.En typ av variabel i en klass.

3. Vad innebär inkapsling?

A.Att dölja intern information och exponera en offentlig API.
B.Att ärva egenskaper från en annan klass.
C.Att skapa flera instanser av en klass.
D.Att implementera flera gränssnitt.

4. Vilken av följande är ett exempel på överlagring?

A.En metod med samma namn men olika parametrar.
B.En metod som har samma namn och parametrar som en annan metod.
C.En klass som ärver från en annan klass.
D.En metod som används för att skapa ett objekt.

5. Vad är en klass?

A.En struktur för att lagra data.
B.En mall för att skapa objekt med attribut och metoder.
C.En typ av metod som kan anropas.
D.En datatyp i programmering.

6. Vad betyder abstrakt klass?

A.En klass som inte kan instansieras.
B.En klass med enbart statiska metoder.
C.En klass som inte kan ärvas.
D.En klass med en konstruktor.

7. Vad är arv?

A.En relation där en klass ärver egenskaper från en annan klass.
B.En metod för att dölja data.
C.En teknik för att skapa prototyper.
D.En typ av inkapsling.

8. Vad är skillnaden mellan arv och komposition?

A.Arv: en klass ärver från en annan. Komposition: en klass innehåller en annan.
B.Arv: flera klasser ärver från en klass. Komposition: en klass ärver från flera klasser.
C.Arv: en klass har metoder. Komposition: en klass har inga metoder.
D.Arv: en klass är statisk. Komposition: en klass är dynamisk.

9. Fyll i blank: En ______ är en typ av metod som kan överskrida en metod i en basklass.

A.Virtuell metod
B.Abstrakt klass
C.Gränssnitt
D.Konstruktor

10. Vad innebär kapsling i OOP?

A.Skydda klassens interna tillstånd.
B.Överföra anrop till en annan funktion.
C.Kombinera flera klasser till en.
D.Definiera en klass utan metoder.

11. Vad är polymorfism?

A.Förmågan för en metod att ha flera former.
B.Processen att dölja interna tillstånd.
C.Ett sätt att implementera gränssnitt.
D.En typ av klass.

12. Vilken av följande definierar polymorfism?

A.Förmågan hos olika objekt att hanteras som om de är av samma typ.
B.Processen att skapa ett objekt.
C.Användning av flera gränssnitt i en klass.
D.Flera klasser som implementerar samma metod.

13. Sant eller falskt: En klass kan ha flera konstruktörer.

A.Sant.
B.Falskt.
C.Endast om det är en abstrakt klass.
D.Endast under vissa omständigheter.

14. Vad innebär överskrivning av metoder?

A.Att en subklass definierar en metod med samma namn och parametrar som en superklass.
B.Att två klasser har samma metodnamn.
C.Att en metod inte kan anropas.
D.Att en metod har flera implementationer.

15. Vad är en konstruktor?

A.En metod som skapar ett objekt.
B.En datatyp för att lagra objekt.
C.En typ av attribut.
D.En funktion för att dölja data.

16. Vilken typ av metod kallas statisk?

A.En metod som tillhör klassen snarare än instanser av klassen.
B.En metod som inte kan anropas.
C.En metod som alltid ger samma resultat.
D.En metod som kan anropas på objekt av olika klasser.

17. Jämför attribut och metoder.

A.Attribut är data, metoder är funktioner.
B.Attribut är funktioner, metoder är data.
C.Attribut finns endast i abstrakta klasser.
D.Metoder kan inte ha data.

18. Vad är en konstruktor?

A.En speciell metod som anropas vid skapandet av ett objekt.
B.En metod som används för att stänga ett objekt.
C.En metod för att återanvända kod.
D.En metod som definierar en klass.

19. Vad är ett gränssnitt?

A.En uppsättning metoder utan implementation.
B.En typ av klass.
C.En funktion som döljer data.
D.En konstruktor för klasser.

20. Vad är en callback-funktion?

A.En funktion som skickas som argument och anropas senare.
B.En funktion som används för att skapa nya objekt.
C.En metod som inte har någon implementation.
D.En funktion som returnerar ett värde.

21. Vad är komposition?

A.En klass som innehåller instanser av andra klasser.
B.En metod som kombinerar flera funktioner.
C.En typ av arv.
D.En teknik för att dölja data.

22. Vilken av följande är en designprincip inom OOP?

A.Single Responsibility Principle: varje klass ska ha ett enda ansvar.
B.Multiple Responsibility Principle: flera klasser ska dela ansvar.
C.Open/Closed Principle: klasser ska vara öppna för ändringar.
D.Dependency Inversion Principle: klasser ska vara beroende av konkreta klasser.

23. Sant eller falskt: Objekt kan skapa objekt.

A.Sant.
B.Falskt.
C.Endast i abstrakta klasser.
D.Endast under vissa omständigheter.

24. Vilken av följande beskriver delegation?

A.Överföring av ansvar från ett objekt till ett annat objekt.
B.Att skapa en ny klass från en befintlig klass.
C.Att kalla en metod på ett objekt.
D.Att definiera en metod i en klass.

25. Vad är en abstrakt klass?

A.En klass som inte kan instansieras.
B.En typ av gränssnitt.
C.En klass med endast statiska metoder.
D.En klass som alltid är offentlig.

26. Vilket påstående är sant om abstrakta klasser?

A.De kan inte instansieras.
B.De måste alltid ha en konstruktor.
C.De kan innehålla statiska metoder.
D.De kan implementera gränssnitt utan metoder.

27. Vad är en metod?

A.En funktion definierad inom en klass.
B.En typ av data.
C.En konstruktor.
D.Ett gränssnitt.

28. Vad är en egenskap (property) i OOP?

A.En variabel som definierar tillståndet i en klass.
B.En metod som inte returnerar något.
C.En klass med statiska medlemmar.
D.En funktion som anropas vid skapandet av ett objekt.

29. Orsak → Effekt: Vad händer om ett objekt inte har en konstruktor?

A.Objektet kan inte skapas korrekt.
B.Programmet körs utan problem.
C.Konstruktorn skapas automatiskt.
D.Objektet får standardvärden.

30. Vilken av följande är en korrekt skillnad mellan public och private modifierare?

A.Public: tillgänglig för alla; Private: endast tillgänglig inom klassen.
B.Public: endast tillgänglig inom klassen; Private: tillgänglig för alla.
C.Public: endast kan användas i subklasser; Private: kan användas överallt.
D.Public: skyddar data; Private: exponerar data.

31. Fyll i blank: En ______ gör att en klass kan implementera flera gränssnitt.

A.Klass
B.Abstrakt klass
C.Metod
D.Attribut

32. Vad beskriver en virtuell metod?

A.En metod som kan överskrivas i en subklass.
B.En metod som inte kan anropas.
C.En metod med flera implementationer.
D.En metod som alltid returnerar ett värde.

33. Vilken av följande är inte en del av OOP-koncept?

A.Dynamisk typning.
B.Abstraktion.
C.Arv.
D.Kapsling.

34. Vad kännetecknar en klass som implementerar flera gränssnitt?

A.Den kan definiera metoder från alla gränssnitt.
B.Den kan inte ha egna metoder.
C.Den kan endast använda ett gränssnitt.
D.Den kan inte ärvas.

35. Vad beskriver skillnaden mellan komposition och arv?

A.Komposition innebär att en klass kan innehålla en annan klass.
B.Arv betyder att en klass kan instansieras av en annan klass.
C.Komposition skapar en ny klass från flera befintliga klasser.
D.Arv gör att en klass kopierar alla egenskaper från en annan.

36. Vilken av följande beskriver bäst vad polymorfism innebär i objektorienterad programmering?

A.Möjligheten för olika objekt att behandlas som samma typ.
B.En metod som alltid ger samma resultat.
C.En klass som inte kan instansieras.
D.Ett sätt att skydda klassens tillstånd.

Relaterade studieset

Skapa ditt eget studieset

Ladda upp en PDF, klistra in dina anteckningar eller beskriv ett ämne – AI genererar flashcards, quiz och mer på några sekunder.