Sobes.tech
Junior — Middle

Μπορείτε να εξηγήσετε τι σημαίνει μια στατική ιδιότητα στον αντικειμενοστραφή προγραμματισμό;

sobes.tech AI

Απάντηση από AI

Μια στατική ιδιότητα στον αντικειμενοστραφή προγραμματισμό είναι μια ιδιότητα της κλάσης, όχι μιας συγκεκριμένης στιγμιότυπου. Ανήκει στην ίδια την κλάση και μοιράζεται από όλα τα αντικείμενα αυτής της κλάσης.

Για παράδειγμα, αν έχετε μια κλάση Car, και έχει μια στατική ιδιότητα numberOfCars, αυτή η ιδιότητα θα είναι κοινή για όλα τα αντικείμενα Car και μπορεί να χρησιμοποιηθεί για τον υπολογισμό του συνολικού αριθμού αυτοκινήτων που έχουν δημιουργηθεί.

Στη Swift, αυτό φαίνεται έτσι:

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

let car1 = Car()
let car2 = Car()
print(Car.numberOfCars) // Θα εμφανίσει 2

Έτσι, οι στατικές ιδιότητες είναι χρήσιμες για την αποθήκευση δεδομένων που πρέπει να είναι κοινά για όλες τις περιπτώσεις της κλάσης.