De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Hoofdstuk 10 Overerving.

Verwante presentaties


Presentatie over: "Hoofdstuk 10 Overerving."— Transcript van de presentatie:

1 Hoofdstuk 10 Overerving

2 Voortborduren op eerder gedaan werk
Eerste poging: “knip&plak” class Twee { int x, y; int oud ( ) { return x+y; } class Twee { int x, y; int oud ( ) { return x+y; } Drie int z; +1; } int nieuw ( ) { return x+y+z; } versie-management problematiek }

3 Voortborduren op eerder gedaan werk
veel gedoe Tweede poging: “delegeren” class Twee { int x, y; int oud ( ) { return x+y; } class Twee { Twee t; int oud ( ) { return t.oud(); } Drie int z; } int nieuw ( ) { return t.x+t.y+z; } raar asymmetrisch }

4 Voortborduren op eerder gedaan werk
Derde poging: “subklassen” class Twee { int x, y; int oud ( ) { return x+y; } class Twee extends Twee { Drie int z; } int nieuw ( ) { return x+y+z; } }

5 Subklassen class Ruimte extends Canvas
Ruimte is een subklasse van Canvas Canvas is de superklasse van Ruimte Elk Ruimte-object is tevens Canvas-object Een Ruimte-object is een bijzonder geval van een Canvas-object

6 Over-erving Objecten van een subklasse erven variabelen en methoden van de superklasse Thermo geërfd meter min max zelf gede- clareerd

7 Superklassen in libraries
Applet extends Panel Panel extends Container super- superklasse superklasse

8 Ge-erfde methodes Applet erft add van klasse Container en nog veel
meer...

9 ondergrond gaat voor motorisatie
Klasse-hiërarchie Vervoer middel Voertuig Boot Motor Voertuig Fiets Boot Zeil Vracht Wagen Stoom Boot Auto Motor Fiets ontwerpkeuze: motorfiets is meer motor dan fiets Vliegtuig ontwerpkeuze: ondergrond gaat voor motorisatie

10 Klasse-hiërarchie “is een”
Voertuig Vervoer middel Boot class Voertuig extends Vervoermiddel class Boot extends Vervoermiddel “is een”

11 Klasse-hiërarchie in AWT
Component Button Canvas Label Scrollbar Text Component Container Panel Window Applet Frame Dialog FileDialog a.add(b); TextArea TextField Hallo Applet Container Component Button is een Component Applet is ook een Component (niet zomaar eentje, maar Container, en zelfs Panel)

12 Klassen vs. Interfaces Klasse: Groep methoden + declaraties
Interface: Groep methode-headers “wensenlijstje” dat door een andere klasse moet worden geïmplementeerd

13 “Interface” in 3 betekenissen
Hardware: stekkertjes zijn het “gezicht” van de computer Software: knopjes zijn het “gezicht” van programma “GUI” Programmeren: methoden zijn het “gezicht” van een object class Hallo implements ActionListener {

14 Interface-hiërarchie in AWT
Event Listener Action Listener Adjustment Listener Component Listener Mouse Listener MouseMotion Listener

15 Klasse-hiërarchie in AWT
Event Object AWT Event Action Event Input Event Focus Mouse Key Component Event Adjustment Event

16 Alles in één hiërarchie
Object String Component Event Object Methoden in klasse Object : toString herdefinieerbaar in subklasse clone maakt exacte kopie

17 Samenvatting Subklassen
objecten erven variabelen/methoden van superklassen objecten zijn/kunnen alles wat superklasse-object ook kon subklasse-objecten zijn dus acceptabel waar een superklasse-object nodig is als rechterkant van een toekenning als parameter van een methode


Download ppt "Hoofdstuk 10 Overerving."

Verwante presentaties


Ads door Google