Junior — Middle
Quali tipi di inizializzatori sono disponibili per l'uso durante l'estensione delle funzionalità in Extention?
sobes.tech AI
Risposta dell'AI
In Swift, le estensioni (Extensions) non possono aggiungere nuovi inizializzatori designati (principali), ma possono aggiungere inizializzatori di convenienza, purché non siano in conflitto con quelli esistenti. Inoltre, non è possibile sovrascrivere gli inizializzatori esistenti.
Cioè, nelle estensioni, è possibile implementare solo inizializzatori di convenienza che facilitano la creazione di oggetti chiamando gli inizializzatori designati già esistenti.
Esempio:
extension UIColor {
convenience init(hex: String) {
// Conversione della stringa hex in colore
self.init(red: 0, green: 0, blue: 0, alpha: 1) // esempio
}
}