Skillnad mellan versioner av "Accessmetoder och Property"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 31: Rad 31:
  
  
= <b><span style="color:#931136">Exempel: Klassen Circle</span></b> =
+
= <b><span style="color:#931136">Klassen Empl</span></b> =
 
<div class="ovnE">
 
<div class="ovnE">
[[Image: CircleKonstr.jpg]]
+
[[Image: Empl.jpg]]
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Programmet Encapsulation</span></b> =
+
= <b><span style="color:#931136">Programmet GetSet</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
[[Image: Encapsulation.jpg]]
+
[[Image: GetSet.jpg]]
  
  

Versionen från 5 februari 2021 kl. 22.29

       Lektion 22          Genomgång          Övningar      


Inkapslingens konsekvenser

Inkapsling innebär privata datamedlemmar.

Konstruktorn löser problemet med initieringen av privata datamedlemmar.


Problem som kvarstår:

Hur ska privata datamedlemmar ändras efter initieringen när de är oåtkomliga?

Hur ska de läsas, hur ska de skrivas?


Lösningen är publika accessmetoder. Det finns tre sorters accessmetoder:

  1. Get-metoder
  2. Set-metoder
  3. Strängrepresentationsmetoder


Klassen Empl

Empl.jpg


Programmet GetSet

GetSet.jpg


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

CircleKorexa.jpg


Vad är Property?

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.

Se Konstruktorns egenskaper.


Läs om accessmetoder och Property i kursboken på sid 132-136.


 










Copyright © 2021 TechPages AB. All Rights Reserved.