Skillnad mellan versioner av "2.7 Klassens konstruktor"
Från Mathonline
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 35: | Rad 35: | ||
Man använder publika metoder för att via dem komma åt klassens privata datamedlemmar. | Man använder publika metoder för att via dem komma åt klassens privata datamedlemmar. | ||
− | En av dessa metoder är <b> | + | En av dessa metoder är <b>klassens konstruktor</b>. |
</big> | </big> | ||
Rad 46: | Rad 46: | ||
<b>Konstruktorn</b> är en publik metod vars uppgift är att initiera klassens privata datamedlemmar. | <b>Konstruktorn</b> är en publik metod vars uppgift är att initiera klassens privata datamedlemmar. | ||
− | Konstruktorn finns by default i alla klasser, men kan även skrivas i klassen. Se exemplet | + | Konstruktorn finns by default i alla klasser, men kan även skrivas i klassen. Se exemplet nedan. |
Se [[2.7_Klassens_konstruktor#Konstruktorn_har_tre_egenskaper:|<b><span style="color:#931136">Konstruktorns egenskaper</span></b>]]. | Se [[2.7_Klassens_konstruktor#Konstruktorn_har_tre_egenskaper:|<b><span style="color:#931136">Konstruktorns egenskaper</span></b>]]. |
Versionen från 14 januari 2021 kl. 10.49
Lektion 17 | Genomgång | Övningar |
Vad är objektorienterad programmering?
Vad är inkapsling?
Problem:
Hur ska privata datamedlemmar initieras när de är private, dvs oåtkomliga?
Lösningen:
Man använder publika metoder för att via dem komma åt klassens privata datamedlemmar.
En av dessa metoder är klassens konstruktor.
Vad är en konstruktor?
Konstruktorn är en publik metod vars uppgift är att initiera klassens privata datamedlemmar.
Konstruktorn finns by default i alla klasser, men kan även skrivas i klassen. Se exemplet nedan.
Exempel: Klassen Circle
Programmet Encapsulation
Klassen Circle:s datamedlem radius är oåtkomlig här pga åtkomstmodifieraren private.
Men vi kan initiera den med input via den publika metoden Circle() dvs klassens konstruktor.
Ett körexempel
Konstruktorn har tre egenskaper:
Läs om Klassens konstruktor i kursboken på sid 95-100.
Copyright © 2021 TechPages AB. All Rights Reserved.