Default konstruktorn och andra konstruktorer
Lektion 18 | Genomgång | Övningar |
Klassen CircleD med default konstruktor
class skapar automatiskt en default konstruktor som inte har någon parameter: class().
Default konstruktorn initierar klassens datamedlemmar till defaultvärden.
Defaultvärdena är beroende av medlemmarnns datatyper: Taltypernas defaultvärde är 0.
String:s defaultvärde är " ". Referensernas defaultvärde är null osv.
Programmet EncapsulationD
Klassen CircleD:s datamedlem radius är fortfarande oåtkomlig här pga private.
Alla objekt måste skapas genom att anropa en konstruktor vare sig default eller egendefinierad.
Ett körexempel
Flera konstruktorer: Klassen Account
Datamedlemmarna har ingen explicit åtkomstmodifierare, varken private eller public.
Men de är ändå private by default pga klassens inkapslingsegenskap.
De kan initieras endast via de publika konstruktorerna när ett objekt skapas.
Programmet CreateAccount
"Ompekning" därför att samma referens myAccount används för att peka på det andra objektet.
S.k. Garbage collector rensar automatiskt det första, numera orefererade objektets minnesutrymme.
Ett körexempel
Läs om default konstruktorn och flera konstruktorer på sid 99-103.
Copyright © 2021 TechPages AB. All Rights Reserved.