Concept Flow - Primary constructor and init blocks
Class Declaration with Primary Constructor
Object Creation
Primary Constructor Parameters Assigned
Init Blocks Run
Object Ready
When creating an object, Kotlin assigns primary constructor parameters to properties first, then runs init blocks in order, preparing the object.