Static vs class Funktionen und Variablen in Swift-Klassen: Was ist der Unterschied?
Hallo zusammen! Ich habe angefangen, Swift zu lernen und bin auf ein für mich unverständliches Thema gestoßen. In Klassen können Funktionen und Variablen sowohl als static als auch als class deklariert werden. Anscheinend funktionieren beide Schlüsselwörter ähnlich: Sie ermöglichen es, Methoden aufzurufen und Eigenschaften abzurufen, ohne eine Instanz der Klasse zu erstellen. Zum Beispiel:
```swift
class MyClass {
static var staticProperty = "Statische Eigenschaft"
class var classProperty: String {
return "Klassen-Eigenschaft"
}
static func staticMethod() {
print("Statische Methode")
}
class func classMethod() {
print("Klassen-Methode")
}
}
MyClass.staticMethod() // funktioniert
MyClass.classMethod() // funktioniert auch
```
Aber ich habe bemerkt, dass wenn ich versuche, eine `static`-Methode in einer Unterklasse zu überschreiben, Xcode meckert, während `class`