Gemak Init In Swift

Khuong Pham
Khuong Pham

Volg

23 Mei 2017 · 2 min lezen

Klassen, structuren en opsommingen moet ten minste één lege methode init om het initialiseren voor de voorbereiding van hun instanties.

voor structuren en opsommingen heeft hun constructeur reeds impliciet verklaard.

over de klassen, als we een klas schrijven, moeten we het expliciet verklaren.

Oké, het is goed, toch?

maar een klasse heeft overerving, dat betekent dat het zijn super klasse methoden, eigenschappen en andere kenmerken kan erven. Laten we verder gaan met de volgende code hieronder

we hebben een klasse B – a subklasse van klasse A. We hebben een variabele toegevoegd, en we hebben een initializer toegevoegd om een waarde in te stellen op b zodat het zal compileren. U kunt verwachten dat B de initializer van A, init(a: Int), heeft overgenomen. Maar dat doet het niet. hoe weet A’s init(a: Int) hoe een waarde moet worden toegewezen aan de variabele b die B heeft toegevoegd? Dus we kunnen een Binstantie niet initialiseren met een initializer die niet al onze waarden kan initialiseren, zoals zo:

dus als ik alleen de A-of B-waarde wil initialiseren, met een standaardwaarde van de rest. Hoe kon het?

gemak init zal ons helpen, voeg deze code toe

dus we hebben een zeer gemakkelijke manier om een Binstantie te initialiseren.

dat is het! Ik hoop dat je geniet van dit artikel, bedankt voor het lezen en ik zie je de volgende keer.