OO (Python): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
Regel 14: Regel 14:
 
</pre>
 
</pre>
  
 +
''' Klasse '''
 +
 +
* Een ''klasse'' of ''class'', is de defintie van een verzameling samenhangende gegevens en functies
 
* De '''class''' of '''klasse''' van een object, is de ''definitie'', ''blauwdruk'', ''sjabloon'' of ''template'' om nieuwe exemplaren van dat object te ''instantiëren''. De klasse-aanroep geschiedt hier impliciet - Simpelweg door de string te instantiëren
 
* De '''class''' of '''klasse''' van een object, is de ''definitie'', ''blauwdruk'', ''sjabloon'' of ''template'' om nieuwe exemplaren van dat object te ''instantiëren''. De klasse-aanroep geschiedt hier impliciet - Simpelweg door de string te instantiëren
* <code>upper()</code> is een '''attribuut''' oftewel ''eigenschap'' van deze klasse/dit object. Attributen roep je aan met de dot-operator. Hier kun je ziet dat dit echt een ''attribuut'' betreft, en geen ''method'': <code>print 'myobject'.mijnfantasieding()</code> → Foutmelding <code>AttributeError: 'str' object has no attribute 'mijnfantasieding'</code>
+
 
 +
''' Attributen '''
 +
 
 +
<code>upper()</code> is een '''attribuut''' oftewel ''eigenschap'' van deze klasse/dit object. Attributen roep je aan met de dot-operator. Hier kun je ziet dat dit echt een ''attribuut'' betreft, en geen ''method'':
 +
 
 +
<pre>
 +
>>> print 'myobject'.mijnfantasieding()
 +
AttributeError: 'str' object has no attribute 'mijnfantasieding'
 +
</pre>
  
 
== Bronnen ==
 
== Bronnen ==

Versie van 11 jan 2019 11:42

Python is een object oriented programmeertaal. Hoe werkt dat ook al weer?

Inleiding: Zelfs een string is een object

Interessant: Zelfs variabelen en strings zijn objecten. Interactief voorbeeld:

>>> mijnobject = "hallo
>>> print mijnobject
hallo

>>> print 'mijnobject'.upper()
MIJNOBJECT

Klasse

  • Een klasse of class, is de defintie van een verzameling samenhangende gegevens en functies
  • De class of klasse van een object, is de definitie, blauwdruk, sjabloon of template om nieuwe exemplaren van dat object te instantiëren. De klasse-aanroep geschiedt hier impliciet - Simpelweg door de string te instantiëren

Attributen

upper() is een attribuut oftewel eigenschap van deze klasse/dit object. Attributen roep je aan met de dot-operator. Hier kun je ziet dat dit echt een attribuut betreft, en geen method:

>>> print 'myobject'.mijnfantasieding()
AttributeError: 'str' object has no attribute 'mijnfantasieding'

Bronnen