Les 2: Classes, Instances, Constructors, Static

Python intro
Programming basics-II
Les 3 / Week 7a
Classes, Instances, Constructors, Static
CSD-V
Les 2
1 / 31
next
Slide 1: Slide
Applicatie- en mediaontwikkelaarMBOStudiejaar 3

This lesson contains 31 slides, with interactive quizzes and text slides.

time-iconLesson duration is: 30 min

Items in this lesson

Python intro
Programming basics-II
Les 3 / Week 7a
Classes, Instances, Constructors, Static
CSD-V
Les 2

Slide 1 - Slide

This item has no instructions

Onderwerpen
  • Classes
  • Instances
  • Reference- & Value types
  • Constructors
  • Oefenen (praktisch)
  • Static

Slide 2 - Slide

This item has no instructions

Eerst: Kennis ophalen

Slide 3 - Slide

This item has no instructions

Wat weet je over:
Classes / Klassen

Slide 4 - Mind map

This item has no instructions

Classes
  • Een soort "eigen datatype" met properties en methods
  • Beschrijft één structuur in onze applicatie
  • De naam van een klasse is een zelfstandig naamwoord, bijv.: Product, Category, Person, Printer, Device, AppDbContext

Slide 5 - Slide

This item has no instructions

Classes kunnen werking 'overerven'

  • Neemt eigenschappen en methodes van andere klasse over
  • Laat ons verder bouwen op werk van anderen

Slide 6 - Slide

This item has no instructions

Wat weet je over:
Instances / Instanties

Slide 7 - Mind map

This item has no instructions

De instantie van een klasse = Object

Slide 8 - Slide

This item has no instructions



De instantie van een klasse (Object)


  • Is een reference type
  • Alle variabelen "wijzen" naar hetzelfde object
  • Alle objecten zijn reference types

Slide 9 - Slide

This item has no instructions


Naast object zijn alle standaard datatypes 'value types'


  • int, float, bool, etc...
  • Er wordt een kopie van gemaakt bij iedere verwijzing

Slide 10 - Slide

This item has no instructions

Slide 11 - Slide

This item has no instructions

   Voorbeeld uitwerking: PersonDiceApp
Demonstreert:
  • Classes
  • Inheritance
  • Static
  • Methodes
  • Psuedo-willekeurige getallen genereren
📸

Slide 12 - Slide

This item has no instructions

Waarom steeds theorie herhalen?
  1. Deze termen herkennen en op basis niveau kunnen uitleggen
  2. Daarna hier in de praktijk zelf meer over leren

Slide 13 - Slide

This item has no instructions

Wat zijn goede beschrijvingen voor de term "klasse" in programmeren.
(2 antwoorden mogelijk)
A
Een instantie van een object
B
Een blauwdruk voor een object
C
Een plek in het geheugen waar een object leeft
D
Een soort eigen datatype

Slide 14 - Quiz

This item has no instructions

Wat is geen onderdeel van een klasse?
A
Property
B
Method
C
Program
D
Constructor

Slide 15 - Quiz

This item has no instructions

Beschrijf 'instantie' in je eigen woorden

Slide 16 - Open question

This item has no instructions

Wat is de waarde in person2.Name na deze code?
A
Jane
B
Joe
C
Janette
D
20

Slide 17 - Quiz

This item has no instructions

Wat is myAge na deze code?
A
19
B
20

Slide 18 - Quiz

This item has no instructions

myAge is na deze code nog steeds 19. Wat is de best passende
verklaring?
A
Omdat '++' alleen werkt op dezelfde variabele
B
Omdat het int datatype een 'value type' is
C
Omdat je geen '+= 1' gebruikt
D
Omdat het int datatype een 'reference type' is

Slide 19 - Quiz

This item has no instructions

Value types
Reference types
object
int
kopieert geheugen waarde
verwijst naar geheugenadres
string
bool
instantie
float
double

Slide 20 - Drag question

This item has no instructions

Wat is hierna de waarde van person2.HighestAge?
A
20
B
19
C
Niets
D
person2.HighestAge geeft een error

Slide 21 - Quiz

This item has no instructions

Constructors

Slide 22 - Slide

This item has no instructions

Wat weet je over
Constructors

Slide 23 - Mind map

This item has no instructions

Waarom een constructor handig is
Situatie zonder constructor:
Oeps, vergeten de HealthPoints aan te geven

Slide 24 - Slide

This item has no instructions

Waarom een constructor handig is
Situatie met constructor:
De constructor dwingt af dat we waardes meegeven
Op de juiste manier de constructor gebruiken om een Person te maken:

Slide 25 - Slide

This item has no instructions

Meerdere constructors
Door meerdere constructors te maken, kun je objecten met verschillende standaard waarden laten instantiëren

Slide 26 - Slide

This item has no instructions

Wat is waar over de 'constructor'?
(2 antwoorden mogelijk)
A
Maakt methodes beschikbaar
B
Kan eigenschappen instellen
C
Bouwt een instantie van een klasse op
D
is altijd static

Slide 27 - Quiz

This item has no instructions

Waaraan herken je een constructor-methode?
(2 antwoorden mogelijk)
A
Heeft geen return type
B
Heeft altijd parameters
C
Er staat 'constructor' voor
D
Heeft altijd dezelfde naam als de klasse

Slide 28 - Quiz

This item has no instructions

Beschrijf in je eigen woorden waarom je een constructor zou gebruiken.

Slide 29 - Open question

Hint: Waarom zou je jouw collega's niet zelf alle eigenschappen handmatig laten instellen.

Voorbeeld van een goed antwoord: wanneer we willen forceren dat het object op een bepaalde manier wordt aangemaakt
Er kunnen meerdere constructors zijn en zelfs meerdere methodes met dezelfde naam
A
Waar
B
Niet waar

Slide 30 - Quiz

This item has no instructions

Wat moet er verschillen tussen methodes met dezelfde naam?
(2 antwoorden mogelijk)
A
De naam
B
De return type
C
De constructor
D
De parameters

Slide 31 - Quiz

This item has no instructions