Ich habe eine Klasse namens HTTPHelper
, die für alle meine Back-End-API-Anfragen verantwortlich ist. Alle Methoden in dieser Klasse sind class
Methoden. Wie Sie wissen, können Instanzeigenschaften nicht innerhalb einer class
Methode verwendet werden. Ich habe einige Eigenschaften, die Initialisierung mit einem do{}catch{}
Block müssen die derzeit aus wie so innerhalb eines init(){}
eingeleitet werden:Wie initiiere ich ein Singleton in Swift?
class HTTPHelper{
init(){
do {
//initiate property
} catch{}
}
}
Meine Frage ist, gibt es einen Mechanismus ähnlich einer init(){}
, die eine statische Eigenschaft für eine eingeleitet würde Singleton?
Ich würde vorschlagen, einen Standard-Implementierung Singleton (https://stackoverflow.com/ Fragen/26742138/Singleton-in-Swift/26743597 # 26743597), machen Ihre Eigenschaften normale Instanz Eigenschaften des Singleton. – Rob
Also was passiert im Grunde ist, Sie definieren nur eine Klasse "regelmäßig" ohne "Klasse" Methoden oder "statische" Eigenschaften und erstellen Sie einfach eine statische Instanz der genannten Klasse? @Rob –
Ja. Wie [URLSession.shared'] (https://developer.apple.com/reference/foundation/urlsession/1409000-shared) oder ['FileManager.default'] (https://developer.apple.com/reference/ foundmanager/1409234-default) .. – Rob