Polymorfie Toepassingen. Polymorfie: toepassingen zoefening 1 : polymorfie toepassen.

Slides:



Advertisements
Verwante presentaties
Polymorfie.
Advertisements

Overerving Toepassingen. Overerving: toepassingen zoefening 1 : eenvoudige overerving.
Java Objectgeoriënteerd Programmeren in Java met BlueJ Hoofdstuk 7 Polymorfie en overerving © 2014, Gertjan Laan, versie 2.
4/10/2017 Opleiding BINNENISOLATIE voor thermische renovatie Module 3 Train the trainer – 06/12/ Brugge.
Wageningen University Meteorologie en Luchtkwaliteit
Hoe deel je gesteenten in? Codering; Streckeisen
Jeugd in het Strafrechtelijk kader Les 3, 2016 ‘Needs’
Natuurkunde Overal Hoofdstuk 1: Beweging in beeld.
VAN KEUKENBLAD TOT FRIKANDEL presentatie door Koen Ongkiehong
Energielening.
De missie, het hart en het broodtrommeltje
Roundtable De Gefragmenteerde Organisatie
Welkom.
BASISVEILIGHEID (VCA)
Quel jour sommes-nous aujourd’hui ?
Hoofdstuk 6 Warmte.
Outdoor Advanced - Specialist Tuin en Openbaar Groen 3.1,
Inlichtingenbijeenkomst Simulatiecapaciteit ERTMS
Toolbox: ATEX ATmosphere - EXplosive
En blessurepreventie Trainingsopbouw.
Six hats: Werken met netwerken? Mijn gedacht
VEELTERMEN BLADWIJZERS: GETALWAARDE OPTELLEN EN AFTREKKEN
Omdenken Een kleine test….
Klaar met de toets? Lees aandachtig het samenvattingenblad hst 6
Rd4-afvalconferentie november 2016
Nienke Hoffman Teamleider bovenbouw 28 maart 2017
TAALSITUATIE & - ONTWIKKELING IN VLAANDEREN
6. Sleutelvoedingsfactoren
Hst. 2 Het geslachtsapparaat
Microsoft® Office Outlook® 2007-cursus
DE WINST VAN ZORGVRIENDELIJK WERKGEVERSCHAP
Welkom Brussel, 25/02/2017.
Informatiebijeenkomst project Snippergroen
Kwaliteitsborging voor het Bouwen
Basis Politie- & Honden Voertuigen
Belangrijkste wijzigingen
Jezus voor Pilatus Waar draait het om? Haat; onrecht
H 3 Stabiliteits- en groeipact
De economie in de gouden eeuw
Dienst ter nagedachtenis aan Bertine Goudswaard - Toebes
Kleurenschema’s Inspiratie: steden van de wereld.
Voorproefje klezmer Brave Old World Khevrisa Klezmatics.
Natuurkunde Overal Hoofdstuk 3: Kracht en Beweging.
Herhaling hoofdstuk 3: Krachten
Hoofdstuk 8 Licht en kleur.
Herhaling § §12.1: Echografie = geluidsgolven: onschadelijk
§12.2 Röntgen 1895: Wilhelm Röntgen ontdekt per toeval een geheimzinnige straling die een fotografische plaat zwart kleurt: röntgenstraling!
Kwaliteitsanalyse van toetsen: betrouwbaarheid
Gameprogrammeren: Overerving
Natuurkunde Overal Hoofdstuk 2: Elektriciteit.
Wolf Mooij Jeroen de Klein Jan Janse
Functies met een parameter
5.1 Oefeningen op warmte-capaciteit met uitgewerkte oplossingen
Basistechnologie 1 – Krachten September 2017
Natuurkunde Overal Hoofdstuk 2: Elektriciteit.
Tweedegraads vergelijkingen oplossen
Herhaling §11.1 planckkromme
Elektrische schakelingen
Uitnodiging Rabobank-Sprintwedstrijden Het leukste side-event van de Giro d’Italia!! 30 april – uur.
Tool WD-1: Vergelijken van opdrachten
Relativiteit.
Periodieke verbanden.
Grafen en netwerken I Datastructuren en doorzoeken
Energie en elektriciteit
Toegepast rekenen HEO Algebra.
Massa, Kracht en gewicht.
5. Bedrijven als aanbieders van goederen
1. vergelijkingen 1.1 Rekenen met letters.
Spelend met klank leer je spelend wiskunde
Transcript van de presentatie:

Polymorfie Toepassingen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen hourlyWorker en CommissionWorker->voor vervanging geschikte relaties van Employee

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen ypayEmployees(emps : array[ ] van Employee): ipv Employee -> ook subklassen, zoals HourlyWorkers en CommissionWorkers wegens Voor vervanging geschikte relaties; subklassen worden op een algemene manier behandeld als gewone instanties van Employee ytotal_pay = total_pay + emp.earnings( ) xpolymorfie laat lijken alsof Employee veel verschillende gedragingen heeft xemp.earnings( ) toegepast op HourlyWorker => earnings( ) van HourlyWorker xemp.earnings( ) toegepast op CommissionWorker => earnings( ) van CommissionWorker  payEmployees( ) is een voorbeeld van inkapselende polymorfie. Deze methode werkt voor elke willekeurige werknemer. De methode heeft geen speciale code nodig en u hoeft deze niet telkens bij te werken als u een nieuwe subklasse aan het systeem toevoegt - de methode werkt gewoon voor alle Employees.  Methoden zoals recordEmployeeInfo(emp : CommissionWorker) en recordEmployeeInfo( emp : HourlyWorker) demonstreren overloading. Overloading maakt het een methode mogelijk polymorfisch te lijken. Overloading staat bijvoorbeeld het volgende toe:

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen ypayEmployees( ): voorbeeld van inkapselende polymorfie  geen speciale code nodig voor nieuwe subklasse : methode werkt gewoon voor alle Employees yrecordEmployeeInfo(emp : CommissionWorker) en recordEmployeeInfo( emp : HourlyWorker) demonstreren overloading xdoor overloading lijkt de methode polymorfisch want deze kan beide soorten werknemers verwerken xhet volgende is dus mogelijk

Polymorfie: toepassingen  oefening 1 : polymorfie toepassen

Polymorfie: toepassingen  oefening 1 : polymorfie toepassen xOverloading is wat beperkter dan inkapselende polymorfie: inkapselende polymorfie: één methode (payEmployees( )) nodig voor het berekenen van het loon van een willekeurige Employee, ongeacht het aantal subklassen overloading : telkens een nieuwe methode (recordEmployeeInfo( ) ) toevoegen voor een nieuwe subklasse -> gaat voor kleine hiërarchie, maar voor grotere -> aanpassing: een algemene recordEmployeeInfo( ) schrijven=>inkapselende polymorfie gebruiken

Polymorfie: toepassingen

zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen yzelf nu toepassen: beschouw MoodyObject en subklassen SadObject en HappyObject

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen ySchrijf klasse PsychiatristObject: -> examine( ): neemt een instantie van MoodyObject aan en vertelt hoe die instantie zich voelt -> observe( ): roept cry( ) of laugh( ) aan van het object-argument de PsychiatristObject geeft een medische opmerking voor elk gedrag

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen yPsychiatristDriver =hoofdprogramma

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen yPsychiatristDriver =hoofdprogramma

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen yoplossing:

Polymorfie: toepassingen zoefening 1 : polymorfie toepassen yoplossing: