T2 - 2023 Flashcards
Waartoe dient de parameter van de constructor van de klasse Thread.
De parameter is een functie die wordt aangeroepen als je de methode Strat aanroept.
Als je een nieuwe waarde toekent aan de Text van een Control, wordt dit niet alleen in het geheugen veranderd, maar ook direct zichtbaar gemaakt in de user interface.
Hoe hebben ze dat in de library voor elkaar gekregen?
in de set-minimethode van de property Text staat een aanroep van Invalidate.
Stel dat een combinatie van tien opdrachten drie keer nodig is in een programma, waarbij enkele details per geval verschillen.
Wat is een goede manier om dit toekomstbestendig aan te pakken?
Zet de opdrachten in een body van een functie, met parameters waarmee de details kunnen worden beïnvloed.
Hoe kunnen menu-items van een typische tekstverwerken het best worden verdeeld over het MDI-containerwindow en het MDI-childwindow
New and Help in de container, Save en Close in het child.
Met de opdracht Console.OutWriteLine(hallo”); wordt aangeroepen:
de niet-static methode WriteLine in de klasse TextWriter
De situatie die ontstaat door class A : B { C D; } kan als volgt worden beschreven
A heeft een member met type C
Mag een functie is diens body zichzelf aanroepen?
Ja, en met een if opdracht kun je zorgen dat de functie niet oneindig lang doorgaat.
Wat is waar in de situatie die wordt gecreëerd door de declaratie class K : I als I eeninterface is?
in de klasse K mogen functies voorkomen die in interface I niet worden genoemd.
De C# klasse object is:
- De root van de klasse hiërarchie
- Het type van een variabele die naar alle mogelijke objecten kan verwijzen
- de klasse waarin de methode ToString is gedifinieerd.
Wat kan een gewone (niet-static) functie wel, wat een static functie niet kan?
Een static methode kan geen membervariabelen veranderen.
Wat is het verschil tussen een static en een niet-static membervariabele?
Een static membervariable zit niet in elk object apart opgeslagen. Van een static membervariabele bestaat er maar één, die voor alle objecten dezelfde waarde heeft, terwijl elk object diens eigen versie van een niet-static membervariabele heeft.
Wat is syntactisch het verschil in het gebruik van een static versus een niet-static member?
Een static member wordt van buiten de klasse bereikt door de klassenaam, gevold door een punt, gevolgd door de membernaam. Een gewone, niet-static member wordt van buiten een object bereikt door een object, gevolgd door een punt, gevolgd door de membernaam.
Geef de declaratie in C# van een 3-dimensionale array met daarin drie maal vijfmaal zeven gehele getallen.
int [,,] a = new int [3,5,7]
Geef de opdracht om de waarde van de variable die in deze array in alle opzichten in het midden ligt, met één te vermeerderen.
a[1,2,3]++;
In python zijn er geen arrays toch een variabele maken met dezelfde mogelijkheden als een 3-dimensionale array?
Geef ook hier de opdracht om de variabele in het midden te verhogen.
a = [[[0 for z in range(7)] for y in range (5)]for i in range[3]]
a[1][2][3] += 1
wat is het verschil tussen een virtual methode, en een methode die dat niet is?
Een virtuele methode kan worden overridden in een subklasse.
In welke situatie kan je beter een abstract methode maken dan een virtual methode?
Als een methode een standaard-gedrag moet vertonen en alleen in sommige subklassen een nieuwe invulling moet krijgen, kun je hem het beste virtual maken, en daar dat standaard-gedrag alvast invullen. Als er geen zinvol standaard-gedrag te verzinnen is, en elke subklasse dus een nieuwe invulling moet geven, is een abstract methode de goede keuze