Sobes.tech
Junior — Middle

Wat gebeurt er eerst: de uitvoering van de constructor bij het maken van een object of het aanroepen van de init-methode?

sobes.tech AI

Antwoord van AI

In Python, bij het maken van een object wordt eerst de methode __new__ aangeroepen, die verantwoordelijk is voor het creëren van een instantie van de klasse, en daarna wordt de constructor __init__ aangeroepen, die het gemaakte object initialiseert.

Er bestaat geen aparte standaardmethode init in Python, waarschijnlijk wordt __init__ bedoeld.

Kort samengevat, de volgorde is:

  1. __new__ — object creëren
  2. __init__ — object initialiseren

Voorbeeld:

class MyClass:
    def __new__(cls, *args, **kwargs):
        print('Object wordt gemaakt')
        return super().__new__(cls)

    def __init__(self):
        print('Object wordt geïnitialiseerd')

obj = MyClass()

Uitvoer:

Object wordt gemaakt
Object wordt geïnitialiseerd