Constructoren Genesis 1:1 Aarde a1 = new Aarde(“Adam”, “Eva”);

Slides:



Advertisements
Verwante presentaties
KINN 2010 •OOP •O Object •O Georiënteerd •P Programmeren.
Advertisements

OOS Object geOrienteerd Software-ontwerp - 3
Van domeinklasse tot implementatie
Het ontwerpen van een klasse
Het type int Tekenen met Java operatoren
Modula vs Java MODULE Show; CONST PI = ; TYPE PointRc = RECORD x,y : INTEGER; speed : REAL; angle : REAL; END; VAR a,b : PointRc; BEGIN.
Hoofdstuk 6: Controle structuren
Hoofdstuk 4: Klassen definiëren
Hoofdstuk 2 Hallo, C# !.
Java patterns Introductie tot GoF patterns in Java.
Static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum(
CONTROLESTRUCTUREN (DEEL 2)
JAVA -- H51 CONSTRUCTOR –- COPY-CONSTRUCTOR 1Constructor: Dezelfde naam als de klasse Wordt uitgevoerd d.m.v. new Initialisatie van de (private) attributen.
Oefeningen Hoofdstuk 3.
Algoritmiek Object-georiënteerd Programmeren
1 Datastructuren Introductie tot de programmeeropgaven in C++ Jan van Rijn
6.1 Inleiding HOOFDSTUK 6 METHODEN
1 HOOFDSTUK 5 CONTROLESTRUCTUREN (DEEL 2) 5.1. INTRODUCTIE  Vervolg discussie omtrent gestructureerd programmeren  Introductie van de overblijvende controlestructuren.
JAVA1 H 9. OBJECTGEORIENTEERD PROGRAMMEREN: OVERERVING 1. INLEIDING Wat is overerving (inheritance)? Overerving is een mechanisme waarbij software opnieuw.
P. 1 Vakgroep Informatietechnologie Structuur Deel II C++ Classes Namespaces Type casting Reference types Constructors en Destructors Memory Management.
LauwersCollege Buitenpost Java Applet programma dat op een website zichtbaar is Java Application programma dat zelfstandig werkt Javascript Scripttaal.
Opgave 1a: void nvoid staat in de header van een methode die geen resultaatwaarde heeft nde aanroep van een void-methode is dan een opdracht i.p.v. een.
Arrays.
OO Analyse in de praktijk OO Analyse in de praktijk V Enkele Design Patterns.
OO Analyse in de praktijk OO Analyse in de praktijk IV OO basisregels.
Herhaling Java-programmatie en geautomatiseerd testen (vervolg)
Variabelen Part deux.. Variabelen week 3 0. Herhaling 1. De NullPointerException (p101) 2. Primitieven 3. Scope en levensduur van variabelen 4. Meerdere.
C++ C++ als een verbetering van C Abstracte datatypen met classes Constructoren en destructoren Subklassen binding van functies 1.
Overerving: It’s a kind of magic…. Principes van OO: 1) Overerving 2) Encapsulatie 3) Polymorphisme = (deel van het) OO. paradigma.
Overloading My name is overloading, cause we are many.
Variabelen Part deux.. Variabelen week 3 0. Herhaling 1. De NullPointerException (p101) 2. Primitieven 3. Scope en levensduur van variabelen 4. Meerdere.
Animatie nAnimatie: “tekenfilm” programma toont automatisch veranderende beelden nGemakkelijk te programmeren met gebruik van de klasse Thread “draadje”
Tircms02-p les 3 Functies Strings Structuren. Functies 1. main() 2. { int k; k = 10 ; printf(“%d\n”,fac(k)); } 3. int fac(n) int n; 4. { int f; f= 1;
Tircms03-p les 4 Klassen. Abstracte datatypes in C struct stack { char info[100]; int top; }; void reset(stack *s) { s->top = -1; } void push(stack *s,
Hoofdstuk 14.1 Algoritmen: Zoeken in een netwerk.
Encapsulatie: Every man is an island upon himself.
Polymorphisme en Interfaces: inleiding
Opgave 1a ncompiler: vertaalt broncode naar machine-uitvoerbare code ninterpreter: voert broncode direct uit.
Hoofdstuk 4 Nieuwe methoden. Tekenen g.drawRect(20,60,40,40); g.drawLine(20,60,40,40); g.drawLine(40,40,60,60); g.drawRect(70,60,40,40); g.drawLine(70,60,90,40);
Java Objectgeoriënteerd Programmeren in Java met BlueJ
Java Objectgeoriënteerd Programmeren in Java met BlueJ Hoofdstuk 7 Polymorfie en overerving © 2014, Gertjan Laan, versie 2.
Java Objectgeoriënteerd Programmeren in Java met BlueJ Hoofdstuk 8: Gebruikersinterface © 2014, Gertjan Laan, versie 2.
Studiehouding Ergens verstand van krijgen kost tijd… Uren die je alleen in je boeken doorbrengt maken het verschil. Er is niets mis met onafhankelijkheid.
 C++ heeft een inheritance mechanisme  Manier om functionaliteit te ‘erfen’ van een parrent class ◦ Polymorphisme ◦ Zoals we het ook in C# kennen.
Variabelen. Wat zijn variabelen? Klassiek: een variabele houdt informatie bij. Klassiek: een variabele houdt informatie bij. bvb: int getal; getal = 5;
Soorten programma’s nConsole- applicatie. Soorten programma’s nConsole- applicatie nWindows- applicatie.
Herhaling: He who does not learn from history, is doomed to repeat it.
Variabelen. Wat zijn variabelen? In een programmeertaal zijn er “dingen” nodig die ervoor zorgen dat het programma informatie voor korte of langere tijd.
Eigen klassen maken A new way of thinking.. Wat? Zie voorbeeld. Zie voorbeeld.
GUI Graphical User Interface. Wat is een Graphical User Interface Mooi Gebruiksvriendelijk Veel denkwerk.
Java voor beginners Doel: Een spel maken in LWJGL Door: Jim van Leeuwen.
De definitie van een object. Een object is een verzameling van eigenschappen en bewerkingen. Veel voorkomende objecten zijn: D (display) Gui (user interface)
Windows-applicatie using System.Windows.Forms; using System.Drawing;
Objectgeoriënteerd Programmeren (2)
Objectgeoriënteerd Programmeren
Gameprogrammeren: Objecten en geheugen
Gameprogrammeren: Lists en interfaces
Gameprogrammeren: Overerving
Windows-applicatie using System.Windows.Forms; using System.Drawing;
Gameprogrammeren: Overerving in Painter
Gameprogrammeren: Properties
Tinpro015b-les4 Klassen.
Voorbeeld: Simulatie van bewegende deeltjes
Voortborduren op eerder gedaan werk
Gameprogrammeren: Recursie
Gameprogrammeren: Tiles en File I/O in Tick Tick
Unified Modeling Language
Arjan Egges & Paul Bergervoet
Software Development fundamentals
Software Development fundamentals
Transcript van de presentatie:

Constructoren Genesis 1:1 Aarde a1 = new Aarde(“Adam”, “Eva”);

Herhaling Voorbeeld: Tijdstip oefening Voorbeeld: Tijdstip oefening Constructor = method die automatisch gestart wordt bij gebruik van new Constructor = method die automatisch gestart wordt bij gebruik van new Constructor: Constructor: - geen returntype opgeven - naam = naam vd. klasse Een constructor staat (meestal) public Een constructor staat (meestal) public Zie java API specifications Zie java API specifications

Constructor-overloading Constructor = method Constructor = method => mag overloaded worden => mag overloaded worden =>regels voor overloading tellen

De default constructor = constructor met 0 parameters = constructor met 0 parameters Geeft standaardwaarden aan de attributen (!= geen waarden geven) Geeft standaardwaarden aan de attributen (!= geen waarden geven)

Automatische default constructor Java maakt een default constructor als de programmeur geen enkele constructor schrijft. De standaardwaarden die worden gebruikt zijn 0, 0.0, null, … Java maakt een default constructor als de programmeur geen enkele constructor schrijft. De standaardwaarden die worden gebruikt zijn 0, 0.0, null, … Valt weg als de programmeur zelf minstens 1 constructor schrijft. Valt weg als de programmeur zelf minstens 1 constructor schrijft.

Voorbeeld: klasse Tijdstip klasse Tijdstip

this(…) Om vanuit de ene constructor de andere aan te roepen Om vanuit de ene constructor de andere aan te roepen Handig maar niet noodzakelijk Handig maar niet noodzakelijk Moet altijd als eerste regel staan (als je het gebruikt) Moet altijd als eerste regel staan (als je het gebruikt)

Constructor-ambiguïteit Boek p220 Boek p220

Een naamloos object Voorbeeld: Voorbeeld: g.setFont(new Font(“verdana”, Font.PLAIN, 14)); g.setFont(new Font(“verdana”, Font.PLAIN, 14)); Er is geen referentie in de Applet die naar het Font object wijst. Dit noemt men een naamloos object (p224). Er is geen referentie in de Applet die naar het Font object wijst. Dit noemt men een naamloos object (p224).

Mutators en accessors Mutator = set-methode Mutator = set-methode Accessor = get-methode Accessor = get-methode private int getal; public void setGetal(int waarde) {getal = waarde;} public int getGetal() {return getal;} Voorbeeld: klasse Tijdstip Voorbeeld: klasse Tijdstip