De definitie van een object. Een object is een verzameling van eigenschappen en bewerkingen. Veel voorkomende objecten zijn: D (display) Gui (user interface)

Slides:



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

OOS Object geOrienteerd Software-ontwerp - 3
Hoofdstuk 8: Recursie.
Instructie Programmeren Task 8 5JJ70. PAGE 2 Task 8: Double Linked List Het doel van deze opdracht is: Het opbouwen van een tweetal klassen, die samen.
Van domeinklasse tot implementatie
Objecten Hoofdstuk 6 Hoofdstuk 6 Hoofdstuk 6 1.
Klassen en objecten.
Hoofdstuk 6: Controle structuren
Inleidend probleem Data structuur (hiërarchie van classes)
Hoofdstuk 8 Objecten en klassen.
Static Keyword static voor functieleden functie niet voor een object aangeroepen class K {... static int minimum( int i, int j); } aanroep: K::minimum(
JAVA -- H51 CONSTRUCTOR –- COPY-CONSTRUCTOR 1Constructor: Dezelfde naam als de klasse Wordt uitgevoerd d.m.v. new Initialisatie van de (private) attributen.
1 Datastructuren Introductie tot de programmeeropgaven in C++ Jan van Rijn
P. 1 Vakgroep Informatietechnologie Structuur Deel II C++ Classes Namespaces Type casting Reference types Constructors en Destructors Memory Management.
OOS Object geOrienteerd Software-ontwerp - 2
OO Analyse in de praktijk OO Analyse in de praktijk IV OO basisregels.
Deel XIV Eerste echte e-commerce applicatie Implementatie (vervolg) 1 Internetapplicaties Deel 15: Herhaling Java-programmatie en geautomatiseerd testen.
KINN 2010 OOP O Object O Georiënteerd P Programmeren.
PHP & MYSQL LES 02 PHP & FORMULIEREN. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Hoofdstuk 5 Interactie. Controls Form Label Button Label TextBox.
Allemaal beestjes Wereldoriëntatie les 2. Planten- en vleeseters.
Overerving: It’s a kind of magic…. Principes van OO: 1) Overerving 2) Encapsulatie 3) Polymorphisme = (deel van het) OO. paradigma.
Tircms03-p les 6 Templates. Functietemplates void verwissel(int &x, int &y); { int w=x;x=y;y=w;} Dezelfde functie voor meerdere types heet een functietemplate.
Constructoren Genesis 1:1 Aarde a1 = new Aarde(“Adam”, “Eva”);
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,
Encapsulatie: Every man is an island upon himself.
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.
 C++ heeft een inheritance mechanisme  Manier om functionaliteit te ‘erfen’ van een parrent class ◦ Polymorphisme ◦ Zoals we het ook in C# kennen.
Programma opdrachten methoden klasse variabelen en Geheugen objecten klasse zijn gegroepeerd in hebben als type veranderen bewerken.
Aangepaste timing nTheorie (16 colleges + 2 deeltentamens) nPraktijk (16 keer, 3 inleveropdrachten) college Tent. 1 Tent. 3 college prakt. 1 prakt. 3 prakt.
Eigen klassen maken A new way of thinking.. Wat? Zie voorbeeld. Zie voorbeeld.
C++ Les 1: introductie. Programmeren Programma’s scripts Websites libraries (Sound, GUI, netwerking…)
Na de praktijk, de theorie.. Zoals een gehaktmolen 1.Je stopt er iets in. 2.Je hoeft niet te weten wat er binnenin gebeurt. 3.Het resultaat verschijnt.
Java voor beginners Doel: Een spel maken in LWJGL Door: Jim van Leeuwen.
GUI & classes Een Gui in een class steken en het object gebruiken.
IF() ELSE() LES 4: VOORWAARDEN. BOOL Een variabele die slechts 2 mogelijke waarden kan hebben: true(waar) of false(niet waar) duid je aan met bool bool.
Memc.  Je kent het antwoord terwijl je je programma maakt en dit is niet veel: voorzie X objecten.  Je kent het antwoord terwijl je je programma maakt.
SharePoint Alles over versiebeheer In de Private en Public cloud.
SharePoint Alles over metadata In de Private en Public cloud.
Objectgeoriënteerd Programmeren (2)
Aanroep van een methode voert opdrachten uit in de body daarvan
Objectgeoriënteerd Programmeren
Gameprogrammeren: Objecten en geheugen
Gameprogrammeren: Lists en interfaces
Gameprogrammeren: Overerving
Windows-applicatie using System.Windows.Forms; using System.Drawing;
Gameprogrammeren: Animatie
Gameprogrammeren: Methoden
Gameprogrammeren: Overerving in Painter
Gameprogrammeren: Herhalingen
Gameprogrammeren: Properties
OOS Object geOrienteerd Software-ontwerp - 5
Tinpro015b-les6 Templates.
Gameprogrammeren: Game Basics
Tinpro015b-les4 Klassen.
Voortborduren op eerder gedaan werk
Gameprogrammeren: Abstracte klassen
Gameprogrammeren: Tiles en File I/O in Tick Tick
Unified Modeling Language
Gameprogrammeren: Klassen en objecten
GAME MAKER ONLINE Les 2 / Breakout Michel Fiege.
Arjan Egges & Paul Bergervoet
Object Communication (Jewel Jam)
Software Development fundamentals
Gameprogrammeren: Sprite sheets
Software Development fundamentals
Transcript van de presentatie:

De definitie van een object

Een object is een verzameling van eigenschappen en bewerkingen. Veel voorkomende objecten zijn: D (display) Gui (user interface) World (game world) Je kan ook zelf objecten maken als je het type kent: Vec2 pos; Button b; Circle c; Rect r; OBJECTEN

Een class bevat de definitie van een object, maar is geen object op zich. Als je dit vreemd vindt, denk dan aan een omschrijving van een stoel op een blad papier. De omschrijving mag dan wel heel duidelijk zijn, je kan er nog steeds niet op zitten. CLASS (OBJECT DEFINITIE)

class CLASS Geef bestand dezelfde naam als de klasse private onderdelen werken enkel in dit bestand public onderdelen werken overal ‘constructor’: een functie met eenzelfde naam als de class wordt automatisch uitgevoerd bij het maken van het object Gebruik ‘setters’ en ‘getters’ om private waarden aan te passen van buiten de class.

Variabelen Objecten Functies (lidfuncties) WAT KAN ER IN EEN CLASS?

De objecten en functies hieronder zijn enkel binnen de class te gebruiken. Je kan ze niet rechtstreeks in je programma gebruiken of aanpassen. Je gebruikt private om een deel van je class af te schermen, zodat je het niet per ongeluk fout kan gebruiken. PRIVATE

Het ‘publieke’ deel van je class. Dit zijn de functies en variabelen die je van in je programma kan aanpassen. PUBLIC

Zonder private Mogelijk om speed gelijk te stellen aan een negatief getal. Een negatieve speed zorgt voor een oneindige loop in update. Met private Speed is niet beschikbaar in het programma. Om de waarde van speed aan te passen of op te vragen heb je extra functies nodig. WAAROM PRIVATE GEBRUIKEN?

Om waarden in te stellen gebruiken we dikwijls ‘set-’ en ‘get’ functies. Als de variabele zelf private is, dan kan het zelfs niet anders. void setSpeed(float value) { if( value < 1) value = 1; speed = value; } float getSpeed() { return speed; } SETTERS - GETTERS

Iedere class mag EEN functie hebben met dezelfde naam als de class. Deze functie mag je zelf niet gebruiken, maar wordt automatisch uitgevoerd wanneer je een object maakt van deze class. Niet alles kan in een constructor: de breedte van je beeldscherm is bijvoorbeeld nog niet bekend tijdens de start van het programma. CONSTRUCTOR