Skillnad mellan versioner av "Accessmetoder och Property"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 32: Rad 32:
  
 
= <b><span style="color:#931136">Klassen Empl</span></b> =
 
= <b><span style="color:#931136">Klassen Empl</span></b> =
<div class="ovnE">
+
<div class="ovnC">
 
[[Image: Empl.jpg]]
 
[[Image: Empl.jpg]]
 
</div>
 
</div>
Rad 62: Rad 62:
  
 
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>]].
 +
</big>
 +
</div>
 +
 +
 +
= <b><span style="color:#931136">Klassen EmplP</span></b> =
 +
<div class="ovnA">
 +
[[Image: EmplP.jpg]]
 +
</div>
 +
 +
= <b><span style="color:#931136">Programmet Property</span></b> =
 +
<div class="ovnA">
 +
[[Image: Property.jpg]]
 +
 +
 +
<big>Klassen Circle:s datamedlem <b><span style="color:red">radius</span></b> är oåtkomlig här pga åtkomstmodifieraren <b><span style="color:red">private</span></b>.
 +
 +
Men vi kan initiera den med <b><span style="color:red">input</span></b> via den publika metoden <b><span style="color:red">Circle()</span></b> dvs klassens konstruktor.
 
</big>
 
</big>
 
</div>
 
</div>

Versionen från 5 februari 2021 kl. 22.33

       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.


Klassen EmplP

EmplP.jpg

Programmet Property

Property.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.


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


 










Copyright © 2021 TechPages AB. All Rights Reserved.