"Daar ben ik weer. Ik was nog vergeten iets uit te leggen. Ik wil je wat vertellen over variabelen en geheugenadressering. We gaan er niet heel erg diep op in, maar het is goed als je probeert er tenminste iets van te onthouden."

"Ik vind dat jullie de lessen heel fijn benaderen! Als ik iets begrijp, is dat geweldig. En als ik er niks van snap, is dat ook okee."

"Liefde voor het vak kun je niet afdwingen. Dat is toch logisch? Is dat niet zo op jullie planeet?"

"Nee. Hier doen we het anders. Als je wilt, dan studeer je. Als je niet wilt, dan studeer je ook, maar dan met tegenzin."

"Wat een ouderwetse aanpak van onderwijs! Zo verspil je een hoop tijd en energie en het resultaat is ook al niet best."

"We verspillen inderdaad heel veel tijd. Maar laten we het niet over dat soort pijnlijke dingen hebben."

"OK. Denk eens aan Excel. Iedereen kent Excel. Een spreadsheet in Excel bestaat uit cellen. Elke cel heeft zijn eigen plaatsaanduiding: (A1, A2, โ€ฆ, B1, B2). Die plaatsaanduidingen zou je ook 'adressen' kunnen noemen. Als je het adres van een cel kent, kun je een bepaalde waarde naar die cel schrijven of opvragen welke waarde er in die cel is opgeslagen. Computergeheugen is eigenlijk op dezelfde manier georganiseerd."

Geheugenadressering en variabelen - 1

"Ik volg je nog."

"Wanneer een programma wordt uitgevoerd, staan het programma en de programmadata in het geheugen van de computer. Het hele computergeheugen is onderverdeeld in kleine cellen, die we bytes noemen. Elke cel heeft zijn eigen nummer: 0,1,2,3,โ€ฆ (ook hier beginnen we bij 0 te tellen). Als je het nummer van een geheugencel weet, kun je er data in opslaan. Of opvragen welke waarde er nu in zit. Sommige geheugencellen bevatten de code van het programma, dus de instructies die door de computerprocessor moeten worden uitgevoerd. Andere geheugencellen bevatten de data die door het programma worden gebruikt. Het nummer van een geheugencel noemen we het adres."

"Professor Uilemans heeft me al iets verteld over de processor en over machinecode, maar niet in detail."

"De processor weet wat hij moet doen met de instructies die in het geheugen zijn geladen. Bijna alle processorinstructies gaan erover dat data uit bepaalde cellen worden gebruikt om er een berekening of een andere bewerking op uit te voeren, waarna het resultaat wordt geschreven naar andere cellen. We gebruiken combinaties van honderden van die simpele instructies om complexe en zinvolle routines te maken."

"Maar waar heb ik dit allemaal voor nodig?"

"Wanneer je een variabele declareert, wordt voor die variabele een stukje geheugen gereserveerd dat nog vrij is. Meestal gaat het dan om een paar bytes. Bij het declareren van een variabele moet je aangeven wat voor soort data je in die variabele wilt opslaan: getallen, tekst of iets anders. Je moet dus het datatype van de variabele specificeren. Voor het gemak wijs je bovendien aan elke variabele een unieke naam toe."

"Betekent dit nou dat een variabele een naam is, en een type, een stukje geheugen, en ook nog een waarde?"

"Precies. Een variabele is al die dingen tegelijk. Ik zal je wat voorbeelden geven:

Code Uitleg
1
String s;
Deze regel maakt een variabele met de naam s. We declareren het type van de variabele als String. Dit betekent dat we tekst in de variabele kunnen opslaan.
We mogen geen andere variabele met precies dezelfde naam declareren in dezelfde functie of dezelfde klasse.
2
String s2 = "I'm Diego";
Deze regel declareert een String-variabele genaamd s2 en wijst er meteen de waarde "I'm Diego" aan toe.
3
int a;
Hier declareren we een variabele die a heet. Het datatype geeft aan wat voor soort informatie we in de variabele kunnen opslaan. Het datatype int is een afkorting voor integer.
4
int b = 4;
Dit declareert een variabele met de naam b. Het datatype (int) is weer bedoeld voor het opslaan van integers (gehele getallen). We wijzen meteen de waarde 4 aan deze variabele toe.

Hier zijn nog wat taken van Diego. Werk ze maar in je eigen tempo door."

1
Taak
Java Syntax,  niveau 1les 3
Vergrendeld
Geen onkostendeclaraties maar variabeledeclaraties...
In Java moeten variabelen worden gedeclareerd. We moeten namelijk in het computergeheugen genoeg ruimte reserveren voor de variabele, en die ruimte hangt af van het datatype van de variabele. Pas daarna kunnen we een waarde aan de variabele toewijzen. Het mooie is dat we dit allemaal in รฉรฉn keer kunnen doen. In deze taak ga je een paar variabelen declareren en er meteen waarden aan toewijzen.
1
Taak
Java Syntax,  niveau 1les 3
Vergrendeld
Een variabele op het scherm
Een beginnende Java-programmeur leert in het begin drie belangrijke vaardigheden: declareren (van variabelen), toewijzen (van waarden aan variabelen) en weergeven (van waarden en variabelen). In deze taak oefenen we deze drie basisvaardigheden. Maak een String-variabele, wijs er een waarde aan toe en geef de variabele weer.
1
Taak
Java Syntax,  niveau 1les 3
Vergrendeld
Van variabelen krijg je nooit genoeg
Wanneer je leert programmeren, lijken sommige oefeningen misschien een onnodige herhaling van zetten. Maar schijn bedriegt: vaardigheid is een gevolg van herhaling (in verschillende vormen) en kan niet op een andere manier worden verkregen. Dus nog maar even doorbijten. We gaan namelijk nog een keertje variabelen declareren... Deze keer hebben we er drie, en we gaan ze nog waarden geven ook.
2
Taak
Java Syntax,  niveau 1les 3
Vergrendeld
Het kwadraat van een getal weergeven
De eerste indruk is vaak niet de beste โ€“ maar wel wat je de rest van je leven bijblijft. (We hebben het nog steeds over programmeren trouwens.) In deze taak ga je het kwadraat van een getal berekenen en op het scherm weergeven. Je kunt ook invoer van het toetsenbord lezen: de gebruiker voert dan het getal in wanneer het programma wordt uitgevoerd.