Sobes.tech
Junior — Middle

Ar galite paaiškinti, ką reiškia statinė savybė objektų orientuotoje programavime?

sobes.tech AI

Atsakymas iš AI

Objektinio programavimo srityje statinė savybė yra klasės savybė, o ne konkretaus pavyzdžio. Ji priklauso pačiai klasei ir yra bendrinama visų tos klasės objektų.

Pavyzdžiui, jei turite klasę Car, ir ji turi statinę savybę numberOfCars, ši savybė bus bendra visiems Car objektams ir gali būti naudojama bendram sukurtų automobilių skaičiavimui.

Swift'e tai atrodo taip:

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

let car1 = Car()
let car2 = Car()
print(Car.numberOfCars) // Išves 2

Taigi, statinės savybės yra naudingos saugoti duomenis, kurie turi būti bendri visiems klasės egzemplioriams.