Sobes.tech
Junior — Middle

Je povinné, aby třída měla konstruktor, aby správně fungovala?

sobes.tech AI

Odpověď od AI

Přítomnost konstruktoru ve třídě není vždy nutná pro její správnou funkci. Pokud ve třídě není deklarován žádný konstruktor, překladač automaticky vytvoří výchozí konstruktor bez parametrů.

Nicméně, pokud je potřeba inicializace s parametry nebo speciální logika při vytváření objektu, je třeba konstruktor výslovně deklarovat.

Příklad v Swift:

class Person {
    var name: String
    
    // Konstruktor je povinný, protože existuje povinná vlastnost bez výchozí hodnoty
    init(name: String) {
        self.name = name
    }
}

Pokud mají všechny vlastnosti výchozí hodnoty, není nutné psát konstruktor, a třída bude správně fungovat.