Als developer, wil ik gegevens die bij elkaar horen in één blauwdruk vastleggen in plaats van in steeds meer losse variabelen, zodat ik een derde of vierde ding kan toevoegen zonder dat mijn code dichtslibt met losse namen die ik zelf uit elkaar moet houden.
Twee objecten uit dezelfde blauwdruk zijn tóch twee losse dingen. Verander een attribuut van het ene object en het andere blijft precies zoals het was. Dat is het hele punt van een class: één vorm, veel exemplaren, elk met eigen state.
Je kunt de attributen van een object apart instellen met de punt-notatie aan de linkerkant van een
=. Zo geef je elk object zijn eigen naam en waarden:
rex = Dog()
bella = Dog()
rex.name = "Rex"
bella.name = "Bella"
rex.energy = 60 # only Rex gets tired
Nu is rex.energy gelijk aan 60, maar bella.energy is nog steeds 100.
Twee objecten uit dezelfde blauwdruk, maar met eigen, gescheiden data.
dog1_energy en dog2_energy met de hand uit elkaar
houden. Nu regelt het object dat: rex.energy hoort onlosmakelijk bij Rex.
Sleep de schuif om rex.energy te wijzigen. Let op de rechterkant:
bella.energy beweegt niet mee. Ze delen een blauwdruk, geen data.
De class Dog (met energy = 100) is al gedefinieerd. Maak twee honden,
pas er één aan en bewijs dat de andere ongemoeid blijft.
rex = Dog() en bella = Dog()rex.energy = 60 β pas alleen Rex aan.rex.energy β controleer Rex.bella.energy β is Bella nog 100?rex is bella β zijn het echt twee objecten?Gebruik je Player-blauwdruk uit taak 2 (attributen lives en
score). Nu geef je elke speler zijn eigen naam en zijn eigen voortgang.
Player-objecten aan.name via de punt-notatie.score).lives).Acceptatiecriteria
Player-objecten, elk met een eigen naam.