Sobes.tech
Junior — Middle

Czy możesz wyjaśnić, co oznacza właściwość statyczna w programowaniu obiektowym?

sobes.tech AI

Odpowiedź od AI

Właściwość statyczna w programowaniu obiektowym to właściwość klasy, a nie konkretnego egzemplarza. Należy do samej klasy i jest współdzielona przez wszystkie obiekty tej klasy.

Na przykład, jeśli masz klasę Car i posiada ona właściwość statyczną numberOfCars, to ta właściwość będzie wspólna dla wszystkich obiektów Car i może być używana do zliczania łącznej liczby stworzonych samochodów.

W Swift wygląda to tak:

class Car {
    static var numberOfCars = 0
    init() {
        Car.numberOfCars += 1
    }
}

let car1 = Car()
let car2 = Car()
print(Car.numberOfCars) // Wyświetli 2

W związku z tym, właściwości statyczne są przydatne do przechowywania danych, które mają być wspólne dla wszystkich instancji klasy.