Πίνακας περιεχομένων:
Ορισμός - Τι σημαίνει στατική;
Το στατικό, στο C #, είναι μια λέξη-κλειδί που μπορεί να χρησιμοποιηθεί για να δηλώσει ένα μέλος ενός τύπου έτσι ώστε να είναι συγκεκριμένο για αυτόν τον τύπο. Ο στατικός τροποποιητής μπορεί να χρησιμοποιηθεί με κλάση, πεδίο, μέθοδο, ιδιότητα, χειριστή, συμβάν ή κατασκευαστή.
Ένα στατικό μέλος μιας κλάσης μπορεί να χρησιμοποιηθεί για να παρακολουθεί τις δημιουργούμενες παρουσίες και να διατηρεί κοινά δεδομένα για κοινή χρήση μεταξύ όλων των περιπτώσεων. Μπορεί να χρησιμοποιηθεί σε βοηθητικές και βοηθητικές τάξεις, οι οποίες συνήθως περιέχουν γενικές μεθόδους που περιέχουν αφαιρέσεις καθαρού λογικού. Ένας στατικός κατασκευαστής χρησιμοποιείται για την πραγματοποίηση εγγραφών σε αρχεία καταγραφής, καθώς και στην κλάση περιτύλιξης για τη φόρτωση των βιβλιοθηκών δυναμικής σύνδεσης (DLL) που απαιτούνται για την εκτέλεση μη διαχειριζόμενου κώδικα.
Γενικά, ένας στατικός τροποποιητής μπορεί να χρησιμοποιηθεί με δεδομένα και λειτουργίες που δεν απαιτούν την πρόσβαση μιας κλάσης μιας κλάσης. Χρησιμοποιείται κυρίως όταν τα δεδομένα και η συμπεριφορά μιας κλάσης δεν εξαρτώνται από την ταυτότητα του αντικειμένου. Η χρήση στατικών κατηγοριών και μελών βελτιώνει την αποδοτικότητα του κώδικα.
Η Techopedia εξηγεί το Static
Ένα στατικό μέλος μπορεί να αναφέρεται μόνο μέσω του ονόματος τύπου και όχι μέσω μιας εμφάνισης του τύπου. Το Static δεν μπορεί να χρησιμοποιηθεί με καταστροφικό μηχανισμό, indexer ή άλλο τύπο εκτός της κλάσης.
Σε αντίθεση με ένα πεδίο παρουσίας, το οποίο έχει ξεχωριστό αντίγραφο για κάθε περίπτωση μιας κλάσης, ένα στατικό πεδίο (ή μεταβλητή) μοιράζεται από όλες τις εμφανίσεις μιας κλάσης. Μια στατική μέθοδος μπορεί να υπερφορτωθεί αλλά να μην αντικατασταθεί. Δεν έχει πρόσβαση στα μη στατικά μέλη. Επειδή μια στατική μέθοδος δεν καλείται με αναφορά σε μια παρουσία, είναι πιο γρήγορη η κλήση μιας στατικής μεθόδου στη στοίβα κλήσεων από μια μέθοδο εμφάνισης.
Μια στατική κλάση μπορεί να περιλαμβάνει μόνο στατικά μέλη. Δεν μπορεί να δημιουργηθεί παράσταση κατά το χρόνο εκτέλεσης και δεν μπορεί να κληρονομηθεί. Έχει τη διάρκεια ζωής του ως εκείνη της εφαρμογής στην οποία κατοικεί. Ένας στατικός κατασκευαστής δεν έχει παραμέτρους και τροποποιητές πρόσβασης. Εμφανίζεται αυτόματα πριν από τη δημιουργία της πρώτης στιγμής ή την αναφορά σε οποιοδήποτε στατικό μέλος.
Για παράδειγμα, μια στατική κλάση, TemperatureConverter, μπορεί να χρησιμοποιηθεί για τη μετατροπή της θερμοκρασίας από το Κελσίου στο Φαρενάιτ και αντίστροφα, παρέχοντας δύο μεθόδους που περιέχουν τον κώδικα μετατροπής.
Η χρήση ενός στατικού τροποποιητή έχει τους δικούς του περιορισμούς που περιλαμβάνουν την έλλειψη ασφάλειας νήματος, εγκλεισμού και συντήρησης.
Ο ορισμός αυτός γράφτηκε στο πλαίσιο του C #