Skip to content

Instantiation

Instantiation creates objects from classes. Understand constructors, default values, and how multiple instances maintain independent state.

class Point:
    def __init__(self, x=0, y=0):
        self.x = x
        self.y = y

p1 = Point(1,2)
p2 = Point()
p1.x = 10  # p2.x remains 0
p1 = Point(1,2);
p2 = Point();
p1.x = 10; % p2.x remains default

Gotchas

  • Beware of shared mutable defaults if class-level objects are used as defaults.
  • Constructors should validate inputs and establish invariants.
  • In some languages, object creation may be expensive; consider factory functions or pooling for hot paths.