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
suivant
Slide 1: Diapositive
Applicatie- en mediaontwikkelaarMBOStudiejaar 3

Cette leçon contient 31 diapositives, avec quiz interactifs et diapositives de texte.

time-iconLa durée de la leçon est: 30 min

Éléments de cette leçon

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

Slide 1 - Diapositive

Cet élément n'a pas d'instructions

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

Slide 2 - Diapositive

Cet élément n'a pas d'instructions

Eerst: Kennis ophalen

Slide 3 - Diapositive

Cet élément n'a pas d'instructions

Wat weet je over:
Classes / Klassen

Slide 4 - Carte mentale

Cet élément n'a pas d'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 - Diapositive

Cet élément n'a pas d'instructions

Classes kunnen werking 'overerven'

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

Slide 6 - Diapositive

Cet élément n'a pas d'instructions

Wat weet je over:
Instances / Instanties

Slide 7 - Carte mentale

Cet élément n'a pas d'instructions

De instantie van een klasse = Object

Slide 8 - Diapositive

Cet élément n'a pas d'instructions



De instantie van een klasse (Object)


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

Slide 9 - Diapositive

Cet élément n'a pas d'instructions


Naast object zijn alle standaard datatypes 'value types'


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

Slide 10 - Diapositive

Cet élément n'a pas d'instructions

Slide 11 - Diapositive

Cet élément n'a pas d'instructions

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

Slide 12 - Diapositive

Cet élément n'a pas d'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 - Diapositive

Cet élément n'a pas d'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

Cet élément n'a pas d'instructions

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

Slide 15 - Quiz

Cet élément n'a pas d'instructions

Beschrijf 'instantie' in je eigen woorden

Slide 16 - Question ouverte

Cet élément n'a pas d'instructions

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

Slide 17 - Quiz

Cet élément n'a pas d'instructions

Wat is myAge na deze code?
A
19
B
20

Slide 18 - Quiz

Cet élément n'a pas d'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

Cet élément n'a pas d'instructions

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

Slide 20 - Question de remorquage

Cet élément n'a pas d'instructions

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

Slide 21 - Quiz

Cet élément n'a pas d'instructions

Constructors

Slide 22 - Diapositive

Cet élément n'a pas d'instructions

Wat weet je over
Constructors

Slide 23 - Carte mentale

Cet élément n'a pas d'instructions

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

Slide 24 - Diapositive

Cet élément n'a pas d'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 - Diapositive

Cet élément n'a pas d'instructions

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

Slide 26 - Diapositive

Cet élément n'a pas d'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

Cet élément n'a pas d'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

Cet élément n'a pas d'instructions

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

Slide 29 - Question ouverte

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

Cet élément n'a pas d'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

Cet élément n'a pas d'instructions