A constructor is called whenever:

An object is created

An object is destroying

A object is used

A class is declared