Sobes.tech
Junior — Middle

¿Qué métodos de inicialización de objetos conoces y utilizas en las clases?

sobes.tech AI

Respuesta de la IA

En iOS (Swift/Objective-C), se utilizan diferentes métodos para inicializar objetos en clases:

  1. Inicializadores (initializers) — métodos especiales que establecen el estado inicial del objeto. En Swift, esto es init(), en Objective-C, los métodos -init.

  2. Inicializadores con parámetros — permiten establecer valores iniciales al crear el objeto.

  3. Constructores con delegación — un inicializador llama a otro para evitar duplicación de código.

  4. Inicialización mediante propiedades predeterminadas — las propiedades de la clase pueden tener valores por defecto que se establecen al crear el objeto.

Ejemplo en Swift:

class Person {
    var name: String
    var age: Int

    init(name: String, age: Int) {
        self.name = name
        self.age = age
    }

    convenience init(name: String) {
        self.init(name: name, age: 0)
    }
}

let p1 = Person(name: "Иван", age: 30)
let p2 = Person(name: "Мария")

En Objective-C, la inicialización generalmente se realiza mediante el método -init o inicializadores personalizados, por ejemplo:

- (instancetype)initWithName:(NSString *)name age:(NSInteger)age {
    self = [super init];
    if (self) {
        _name = name;
        _age = age;
    }
    return self;
}