Τι σημαίνει public static void
στη Java;
Είμαι στη διαδικασία εκμάθησης. Σε όλα τα παραδείγματα του βιβλίου από το οποίο εργάζομαι, το public static void
έρχεται πριν από κάθε μέθοδο που χρησιμοποιείται ή δημιουργείται. Τι σημαίνει αυτό;
Είναι τρία εντελώς διαφορετικά πράγματα:
σημαίνει ότι η μέθοδος είναι ορατή και μπορεί να κληθεί από άλλα αντικείμενα άλλων τύπων. Άλλες εναλλακτικές λύσεις είναι οι private
, protected
, package
και package-private
. Δείτε εδώ για περισσότερες λεπτομέρειες.
static
σημαίνει ότι η μέθοδος σχετίζεται με την κλάση και όχι με μια συγκεκριμένη περίπτωση (αντικείμενο) αυτής της κλάσης. Αυτό σημαίνει ότι μπορείτε να καλέσετε μια στατική μέθοδο χωρίς να δημιουργήσετε ένα αντικείμενο της κλάσης.
void
σημαίνει ότι η μέθοδος δεν έχει τιμή επιστροφής. Αν η μέθοδος επέστρεφε ένα int
θα γράφατε int
αντί για void
.
Ο συνδυασμός και των τριών αυτών συναντάται συνήθως στη μέθοδο main
, την οποία περιλαμβάνουν τα περισσότερα σεμινάρια.
Οι τρεις λέξεις έχουν ορθογώνιες έννοιες.
"Δημόσια" σημαίνει ότι η μέθοδος θα είναι ορατή από κλάσεις άλλων πακέτων.
static
σημαίνει ότι η μέθοδος δεν συνδέεται με μια συγκεκριμένη περίπτωση και δεν έχει "this
". Είναι περισσότερο ή λιγότερο μια συνάρτηση.
void
είναι ο τύπος επιστροφής. Σημαίνει "αυτή η μέθοδος δεν επιστρέφει τίποτα".
Αυτό σημαίνει ότι:
static
- δεν έχει καμία κατάσταση αντικειμένου, οπότε μπορείτε να το καλέσετε χωρίς να ενσαρκώσετε ένα αντικείμενοvoid
- δεν επιστρέφει τίποταΘα νομίζατε ότι η έλλειψη επιστροφής σημαίνει ότι δεν κάνει πολλά, αλλά μπορεί να αποθηκεύει πράγματα στη βάση δεδομένων, για παράδειγμα.