Een introductie tot Object Georiënteerd Programmeren
Toegangsspecificaties
Een geweldige mogelijkheid in OOP is die om bepaalde variabelen en methoden af te sluiten van de buitenwereld. Deze variabelen/methoden kunnen alleen worden opgevraagd respectievelijk aangeroepen door methoden van dezelfde klasse. Deze variabelen/methoden worden als privé(Engels: private) gedeclareerd. Publieke(Engels: public) methoden/variabelen zijn toegankelijk vanaf elke plaats.
klasse Persoon
begin
	privé
		string Naam;
	publiek
	
		constructor Persoon(string NieuweNaam)
		begin
			Naam = NieuweNaam;
		eind;
eind;

// Declareer de variabele Jeroen.
Persoon Jeroen;

// Maak een nieuwe instantie van Persoon
// Geef de constructor de naam Jeroen mee
Jeroen = nieuw Persoon("Jeroen");

Jeroen.Naam = "Kees"; // DIT MAG NIET!!! 

// Verwijder Jeroen.
verwijder Jeroen;


Hier zijn we de klasse Persoon, met een privé variabele Naam. De constructor mag de naam van de persoon veranderen aangezien de constructor tot de klasse persoon behoort. Maar van buitenaf is het verboden om de Naam van Jeroen te wijzigen. We kunnen wel een methode schrijven die de naam van de Persoon verandert:
klasse Persoon
begin
	privé
		string Naam;
	publiek
	
		constructor Persoon(string NieuweNaam)
		begin
			Naam = NieuweNaam;
		eind;
		
		methode ZetNaam(string NieuweNaam)
		begin
			Naam = NieuweNaam;
		eind;
eind;

// Declareer de variabele Jeroen.
Persoon Jeroen;

// Maak een nieuwe instantie van Persoon
// Geef de constructor de naam Jeroen mee
Jeroen = nieuw Persoon("Jeroen");

Jeroen.ZetNaam("Kees"); // Dit mag wel, ZetNaam is een methode
// van dezelfde klasse als Naam.

// Verwijder Jeroen.
verwijder Jeroen;


Hier hebben we een methode van Persoon geschreven die de naam verandert. Dit is volkomen legaal aangezien ZetNaam een methode van dezelfde klasse als naam is. Hier is een zeer uitgebreid voorbeeld dat ook het gebruik van Privé methoden toont:
klasse Persoon
begin
	privé
		string Naam;
		
		methode VierVerjaardag
		begin
			// Er is er een jarig, hoera, hoera!
		eind;
		
		methode Sterf
		begin
			// Helaas is deze persoon vandaag heen gegaan.
		eind;
	publiek
		getal Leeftijd;
	
		constructor Persoon(string NieuweNaam)
		begin
			Naam = NieuweNaam;
			Leeftijd = 0;
		eind;
		
		methode Jarig()
		begin
			// Tel één op bij de leeftijd van de persoon.
			Leeftijd = Leeftijd + 1;
			
			als Leeftijd = 75 dan
				Sterf();
			zo niet dan
				VierVerjaardag();
		eind;
eind;

// Declareer de variabele Jeroen en maak 
// een instantie van Persoon aan.
Persoon Jeroen;
Jeroen = nieuw Persoon("Jeroen");

zolang Jeroen.Leeftijd < 75
begin
	Jeroen.Jarig();
eind;

// Verwijder Jeroen.
verwijder Jeroen;


We hebben twee privé methoden, namelijk: Sterf() en VierVerjaardag(). De publieke methode Jarig() wordt aangeroepen zolang de persoon jonger dan 75 is. Als de persoon 75 wordt zal de methode Sterf() aangeroepen worden, anders VierVerjaardag(). De constructor zet de leeftijd van de persoon automatisch op 0.

Vorige - Volgende