以下代码中,descriptor的__set_name__方法何时被调用? ```python class Validator: def __set_name__(self, owner, name): self.public_name = name self.private_name = '_' + name def __get__(self, obj, objtype=None): return getattr(obj, self.private_name) def __set__(self, obj, value): setattr(obj, self.private_name, value) class MyClass: x = Validator() ```