Sobes.tech
Junior — Middle

Je povinné, aby mala trieda konštruktor, aby správne fungovala?

sobes.tech AI

Odpoveď od AI

Prítomnosť konštruktora v triede nie je vždy nevyhnutná pre jej správne fungovanie. Ak v triede nie je deklarovaný žiadny konštruktor, prekladač automaticky vytvorí predvolený konštruktor bez parametrov.

Avšak, ak je potrebná inicializácia s parametrami alebo špeciálna logika pri vytváraní objektu, konštruktor je potrebné explicitne deklarovať.

Príklad v Swift:

class Person {
    var name: String
    
    // Konštruktor je povinný, pretože existuje povinná vlastnosť bez predvolenej hodnoty
    init(name: String) {
        self.name = name
    }
}

Ak majú všetky vlastnosti predvolené hodnoty, nie je potrebné písať konštruktor, a trieda bude správne fungovať.