1 Objecten en klassen
1.1 Inleiding
Objectgeoriënteerd werken sluit nauw aan bij de werkelijkheid
- Sleutelconcept: object
‘real world’ objecten
- Kunnen onderscheiden worden van elkaar
- Hebben eigenschappen
• Kunnen benoemd worden
• Een waarde hebben die;
▪ Kan veranderen
▪ Op zichzelf weerom een object kan zijn
- Hebben een gedrag
• Omvat wat het object kan doen
• Via uitvoeren van een gedrag kunnen de eigenschappen van een object veranderen
Software objecten zijn een weerspiegeling van ‘real world’ objecten:
- Kunnen onderscheiden worden
- Hebben eigenschappen
- Hebben gedrag
Via abstractie ontstaan soorten of types van objecten
soort gelijke objecten hebben
- Dezelfde eigenschappen
- Hetzelfde gedrag
Sleutelconcept: klasse
een klasse bevat de omschrijving van de eigenschappen en het gedrag van soortgelijke objecten.
Een object is een instantie van een klasse
Pagina 1 van 21
2018-2019
,1.2 Objecten
In de OO-wereld is alles een object, een object wordt beschreven door een klasse, een object is een
instantie van een klasse.
- Iets tastbaar (auto, pennenzak, etc.)
- Een concept of abstract ding (bankrekening, een klasse, etc.)
- Organisatorische eenheid (departement, manager, etc.)
- Interactie die moet onthouden worden (aankoop, etc.)
Een object heeft een toestand die omvat:
- Alle eigenschappen van het object
- De huidige/actuele waarde voor elk van deze eigenschappen
De toestand van een object is omschreven in zijn klasse
- Elke eigenschap wordt voorgesteld door een attribuut
- Bestaat uit een naam en een type
• Boolean (ja/nee)
• Int (gehele getallen)
• String (karakterstrings)
• Float (kommagetallen)
• Double (kommagetallen)
Een object heeft een gedrag
- Diensten die het object aanbiedt
- Wat het object kan doen
Objecten sturen boodschappen naar objecten
Pagina 2 van 21
2018-2019
, Objecten ontvangen boodschappen van objecten
- Een object doet iets op vraag van een ander object
- Als reactie op ontvangen boodschap voert een object gedrag uit
Elke dienst die een object aanbiedt wordt omschreven via een methode
De klasse bevat de opsomming van alle methodes die objecten van die klasse aanbieden
Het gedrag wordt gecodeerd en niet getoond in de klasse
Een methode declaratie heeft
- Een naam
• Identifier
• Werkwoord in gebiedende wijze (vervang, splits,…)
- eventuele parameter(s)
• laten toe extra informatie met een boodschap te versturen
• elke parameter heeft een naam en een type
- eventueel returntype
• laten toe een resultaat terug te keren
• we bepalen het type van de terugkeerwaarde
- code die de reactie beschrijft
• programmacode die zorgt dat een methode effectief doet wat ze verondersteld is te
doen
• ontwerp: eventueel pseudocode
naam parameters returntype
We onderscheiden vier soorten operaties:
Pagina 3 van 21
2018-2019