Βίντεο: Εισαγωγή στις Δομές Δεδομένων-Πίνακες 2024
Στην Java, ένα μέλος static είναι μέλος μιας τάξης που δεν συνδέεται με μια παρουσία μια τάξη. Αντίθετα, το μέλος ανήκει στην ίδια την τάξη. Ως αποτέλεσμα, μπορείτε να αποκτήσετε πρόσβαση στο στατικό μέλος χωρίς να δημιουργήσετε πρώτα μια κλάση.
Τα δύο είδη στατικών μελών είναι στατικά πεδία και στατικές μέθοδοι:
-
Στατικό πεδίο: Ένα πεδίο που δηλώνεται με τη στατική λέξη κλειδί, όπως παρακάτω:
ιδιωτικό static int ballCount;
Η θέση της στατικής λέξης-κλειδιού είναι εναλλάξιμη με τις θέσεις των λέξεων-κλειδιών ορατότητας (ιδιωτικές και δημόσιες, καθώς και προστατευμένες). Ως αποτέλεσμα, λειτουργεί και η ακόλουθη δήλωση:
static private int ballCount;
Ως σύμβαση, οι περισσότεροι προγραμματιστές τείνουν να τοποθετούν πρώτα τη λέξη-κλειδί ορατότητας.
Η τιμή ενός στατικού πεδίου είναι η ίδια σε όλες τις περιπτώσεις της κλάσης. Με άλλα λόγια, αν μια κλάση έχει ένα στατικό πεδίο με όνομα CompanyName, όλα τα αντικείμενα που δημιουργούνται από την κλάση θα έχουν την ίδια τιμή για το CompanyName.
Τα στατικά πεδία δημιουργούνται και αρχικοποιούνται όταν φορτώνεται αρχικά η κλάση. Αυτό συμβαίνει όταν γίνεται αναφορά σε ένα στατικό μέλος της τάξης ή όταν δημιουργείται ένα στιγμιότυπο της τάξης, όποιο από τα δύο συμβεί πρώτο.
-
Στατική μέθοδος: Μια μέθοδος που δηλώνεται με τη στατική λέξη-κλειδί. Όπως τα στατικά πεδία, οι στατικές μέθοδοι συνδέονται με την ίδια την τάξη, όχι με κάποιο συγκεκριμένο αντικείμενο που δημιουργείται από την τάξη. Ως αποτέλεσμα, δεν χρειάζεται να δημιουργήσετε ένα αντικείμενο από μια κλάση προτού μπορέσετε να χρησιμοποιήσετε στατικές μεθόδους που ορίζονται από την τάξη.
Η πιο γνωστή στατική μέθοδος είναι η κύρια, η οποία καλείται από το runtime Java για να ξεκινήσει μια εφαρμογή. Η κύρια μέθοδος πρέπει να είναι στατική, πράγμα που σημαίνει ότι οι εφαρμογές εκτελούνται σε στατικό περιβάλλον από προεπιλογή.
Ένας από τους βασικούς κανόνες εργασίας με στατικές μεθόδους είναι ότι δεν μπορείτε να αποκτήσετε πρόσβαση σε μια μη στατική μέθοδο ή πεδίο από μια στατική μέθοδο επειδή η στατική μέθοδος δεν έχει μια παρουσία της κλάσης που θα χρησιμοποιηθεί για να αναφερθεί μέθοδοι ή πεδία στιγμών.