Was ist der Unterschied zwischen static func und class func in Swift?
Hallo! Ich habe angefangen, Swift zu lernen, und bin auf zwei ähnliche Arten gestoßen, Methoden zu deklarieren, die zum Typ selbst gehören, nicht zu seiner Instanz. Mit dem Schlüsselwort `static` vor `func` kann ich eine Methode aufrufen, ohne ein Objekt zu erstellen. Aber ich habe auch gesehen, dass man `class func` für denselben Zweck verwenden kann. Zum Beispiel:\n\n```swift\nstruct MyStruct {\n static func sayHello() {\n print("Hallo von static!")\n }\n}\n\nclass MyClass {\n class func sayHello() {\n print("Hallo von class!")\n }\n}\n```\n\nBeide Aufrufe funktionieren: `MyStruct.sayHello()` und `MyClass.sayHello()`. Was ist der grundlegende Unterschied zwischen ihnen? Warum kann man nicht überall nur `static` verwenden? Und gibt es Einschränkungen bei der Verwendung von `static` in Klassen? Ich wäre dankbar für eine detaillierte Erklärung mit Beispielen.