Skillnad mellan versioner av "4.1 Komposition"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 14: | Rad 14: | ||
En <b><span style="color:red">bil</span></b> har en <b><span style="color:red">motor</span></b>. Båda är tekniskt komplexa objekt, byggda av experter. | En <b><span style="color:red">bil</span></b> har en <b><span style="color:red">motor</span></b>. Båda är tekniskt komplexa objekt, byggda av experter. | ||
− | Man sätter ihop bilen som ett objekt av <b><span style="color:red">klassen Bil</span></b> genom att bygga in i den | + | Man sätter ihop bilen som ett objekt av <b><span style="color:red">klassen Bil</span></b> genom att bygga in i den |
en motor som i sin tur är ett objekt av en annan klass, <b><span style="color:red">klassen Motor</span></b>. | en motor som i sin tur är ett objekt av en annan klass, <b><span style="color:red">klassen Motor</span></b>. |
Versionen från 21 april 2021 kl. 10.11
Lektion 29 | Genomgång | Övningar |
Vad är komposition i programmering?
En bil har en motor. Båda är tekniskt komplexa objekt, byggda av experter.
Man sätter ihop bilen som ett objekt av klassen Bil genom att bygga in i den
en motor som i sin tur är ett objekt av en annan klass, klassen Motor.
Komposition är sammansättning av ett objekt med ett annat objekt.
För att kunna sammansätta objekt måste man först sammansätta klasser.
Komposition betyder sammansättning och är relaterad till modularisering.
Med hjälp av Lego-principen bygger man program med hjälp av redan skrivna
moduler dvs klasser som kan ingå som komponenter i andra klasser.
Klassen Empl
Programmet GetSet
Ett körexempel
Vad är Property?
Property är en hybrid mellan datamedlem och metod som alltid är publik.
Property automatiserar Get- och Set-metoder i klasser med privata datamedlemmar.
Property är till för att utanför klassen kunna läsa värdet av och skriva ett nytt värde till en privat datamedlem.
Klassen EmplP
Programmet Property
Körexempel: samma som ovan.
Läs om accessmetoder och Property i kursboken på sid 132-136.
Copyright © 2021 TechPages AB. All Rights Reserved.