Skillnad mellan versioner av "Variablers livslängd & Överskuggning av variabler"

Från Mathonline
Hoppa till: navigering, sök
m
m
 
(13 mellanliggande versioner av samma användare visas inte)
Rad 45: Rad 45:
  
  
= <b><span style="color:#931136">Klassen EncryptStr</span></b> =
+
= <b><span style="color:#931136">Överskuggning av variabler: Uppgiften</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
[[Image: EncryptStra.jpg]]
+
[[Image: Uppgiften.jpg]]
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Programmet EncryptStrTest</span></b> =
+
= <b><span style="color:#931136">Referensen this</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
[[Image: EncryptStrTesta.jpg]]
+
[[Image: thisb.jpg]]
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Ett körexempel</span></b> =
+
= <b><span style="color:#931136">Lösningen: Programmet OverrideVar</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: EncryptKorex.jpg]]</div>
+
[[Image: Override.jpg]]
 +
 
 +
<big><big>
 +
Metoden Inner():s lokala variabel <b><span style="color:red">bonus</span></b> överskuggar datamedlemmen <b><span style="color:green">bonus</span></b>.
 +
</big></big>
 +
</div>
 +
 
 +
 
 +
= <b><span style="color:#931136">Överskuggning</span></b> =
 +
<div class="ovnC">
 +
[[Image: Overridea.jpg]]
 +
</div>
 +
 
 +
 
 +
= <b><span style="color:#931136">Körexempel</span></b> =
 +
<div class="ovnC">
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: OverrideVarKorex.jpg]]</div>
 
</div>
 
</div>
  
 
<br>
 
<br>
  
= <b><span style="color:#931136">Läs om Statiska metoder och Referens i metoder i kursboken på sid 137-141.</span></b> =
+
= <b><span style="color:#931136">Läs om Variablers livslängd och Överskuggning av variabler i [http://www.mathonline.se/Progr_2/Boken%20Progr_2_Cs.pdf <span style="color:blue">kursboken</span>] på sid 164-171.</span></b> =
  
  
Rad 90: Rad 106:
  
  
[[Matte:Copyrights|Copyright]] © 2021 [https://www.techpages.se <b><span style="color:blue">TechPages AB</span></b>]. All Rights Reserved.
+
[[Matte:Copyrights|Copyright]] © 2022 [https://www.techpages.se <b><span style="color:blue">TechPages AB</span></b>]. All Rights Reserved.

Nuvarande version från 11 mars 2022 kl. 09.25

       Lektion 24          Genomgång          Övningar      


Blockstruktur

Blockstruktur.jpg


Variablers räckvidd (eng. scope), blir ett problem när programmen växer.

Reglerna ovan (eng. scoping) tillämpas automatiskt.

Överskuggning av variabler (eng. overriding) är ett verktyg för att styra variablers livslängd.


Programmet Block

Block.jpg


Den lokala variabeln x definieras i det yttre blocket och initieras till 10.

x "tränger genom" det inre blocket: blir 11 där och är 11 även efter det inre blocket.

Variabeln y definieras i det inre blocket och "dör" efter det inre blocket.


Körexempel

BlockKorex.jpg


Överskuggning av variabler: Uppgiften

Uppgiften.jpg


Referensen this

Thisb.jpg


Lösningen: Programmet OverrideVar

Override.jpg

Metoden Inner():s lokala variabel bonus överskuggar datamedlemmen bonus.


Överskuggning

Overridea.jpg


Körexempel

OverrideVarKorex.jpg


Läs om Variablers livslängd och Överskuggning av variabler i kursboken på sid 164-171.


 










Copyright © 2022 TechPages AB. All Rights Reserved.