OO (Python): verschil tussen versies

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen
Regel 1: Regel 1:
 
Python is een ''object oriented'' programmeertaal. Hoe werkt dat ook al weer?
 
Python is een ''object oriented'' programmeertaal. Hoe werkt dat ook al weer?
 +
 +
== Zelfs een string is een object ==
  
 
Interessant: Zelfs variabelen en strings zijn objecten. Interactief voorbeeld:
 
Interessant: Zelfs variabelen en strings zijn objecten. Interactief voorbeeld:
Regel 14: Regel 16:
  
 
* De ''class'' of ''klasse'' van een object, is de blauwdruk, sjabloon of template om nieuwe exemplaren van het betreffende 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 blauwdruk, sjabloon of template om nieuwe exemplaren van het betreffende object te ''instantiëren''. De klasse-aanroep geschiedt hier impliciet - Simpelweg door de string te instantiëren
* <code>upper()</code> een ''method'' die bij deze klasse/dit object hoort. Blijkbaar fietst deze methode de string om naar uppercase. Methodes roep je aan via de ''dot''
+
* <code>upper()</code> een ''attribuut'' oftewel ''eigenschap'' die bij deze klasse/dit object hoort. 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>
*
+
 
 +
 
 +
== Bronnen ==
 +
 
 +
* https://en.wikibooks.org/wiki/Python_Programming/Basic_Syntax - Voorbeeld van een string als object

Versie van 10 jan 2019 18:20

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

Zelfs een string is een object

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


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

>>> print 'mijnobject'.upper()
MIJNOBJECT
  • De class of klasse van een object, is de blauwdruk, sjabloon of template om nieuwe exemplaren van het betreffende object te instantiëren. De klasse-aanroep geschiedt hier impliciet - Simpelweg door de string te instantiëren
  • upper() een attribuut oftewel eigenschap die bij deze klasse/dit object hoort. Attributen roep je aan met de dot-operator. Hier kun je ziet dat dit echt een attribuut betreft, en geen method: print 'myobject'.mijnfantasieding() → Foutmelding AttributeError: 'str' object has no attribute 'mijnfantasieding'


Bronnen