Διαφορά μεταξύ στατικού και τελικού στην Java

Πίνακας περιεχομένων:

Διαφορά μεταξύ στατικού και τελικού στην Java
Διαφορά μεταξύ στατικού και τελικού στην Java

Βίντεο: Διαφορά μεταξύ στατικού και τελικού στην Java

Βίντεο: Διαφορά μεταξύ στατικού και τελικού στην Java
Βίντεο: Σουραμπάγια, ΙΝΔΟΝΗΣΙΑ 🦈🐊: φιλικοί άνθρωποι και νόστιμο φαγητό Java 2024, Ιούνιος
Anonim

Βασική διαφορά – στατική έναντι τελικής στην Java

Κάθε γλώσσα προγραμματισμού έχει μια συγκεκριμένη σύνταξη. Ο προγραμματιστής πρέπει να ακολουθεί αυτές τις συντακτικές όταν γράφει προγράμματα. Οι λέξεις-κλειδιά των γλωσσών προγραμματισμού έχουν συγκεκριμένες σημασίες ανάλογα με τις εργασίες. Παρέχονται από τη γλώσσα προγραμματισμού και δεν μπορούν να χρησιμοποιηθούν για μεταβλητές, μεθόδους, κλάσεις κ.λπ. καθορισμένες από τον χρήστη. Η στατική και η τελική είναι δύο λέξεις-κλειδιά στην Java. Αυτό το άρθρο εξετάζει τη διαφορά μεταξύ στατικής και τελικής στην Java. Η βασική διαφορά μεταξύ στατικής και τελικής στην Java είναι ότι το static χρησιμοποιείται για να ορίσει το μέλος κλάσης που μπορεί να χρησιμοποιηθεί ανεξάρτητα από οποιοδήποτε αντικείμενο της κλάσης ενώ το final χρησιμοποιείται για να δηλώσει μια σταθερή μεταβλητή ή μια μέθοδο που δεν μπορεί να παρακαμφθεί ή μια κλάση που δεν μπορεί να κληρονομηθεί.

Τι είναι στατικό στην Java;

Μια κλάση αποτελείται από μέλη δεδομένων (χαρακτηριστικά) και μεθόδους. Για να καλέσετε τις μεθόδους, θα πρέπει να υπάρχει ένα αντικείμενο της συγκεκριμένης κλάσης. Όταν μια μέθοδος δηλώνεται ως στατική, δεν χρειάζεται να δημιουργηθεί ένα αντικείμενο για την κλήση αυτής της μεθόδου. Η μέθοδος μπορεί να κληθεί χρησιμοποιώντας το όνομα της κλάσης. Ανατρέξτε στο παρακάτω πρόγραμμα.

Διαφορά μεταξύ στατικής και τελικής στην Java
Διαφορά μεταξύ στατικής και τελικής στην Java

Εικόνα 01: Πρόγραμμα Java με στατικές μεταβλητές και στατική Μέθοδος

Σύμφωνα με το παραπάνω πρόγραμμα, η κλάση Α περιέχει μεταβλητή αριθμού και μέθοδο εμφάνισης. Και τα δύο είναι στατικά μέλη. Επομένως, δεν είναι απαραίτητο να δημιουργήσετε ένα αντικείμενο για πρόσβαση στη μεταβλητή αριθμού και στη μέθοδο εμφάνισης. Ο προγραμματιστής μπορεί να γράψει απευθείας το όνομα της κλάσης για να εκτυπώσει τον αριθμό και να καλέσει την εμφάνιση της μεθόδου. Άρα, δεν υπάρχει ανάγκη να στιγματιστεί ένα αντικείμενο. Εάν η μεταβλητή αριθμού και η μέθοδος εμφάνισης είναι μη στατικές, τότε θα πρέπει να υπάρχει ένα αντικείμενο τύπου A.

Διαφορά μεταξύ στατικού και τελικού στο Java_Figure 02
Διαφορά μεταξύ στατικού και τελικού στο Java_Figure 02

Εικόνα 02: Χρήση στατικού μπλοκ

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

Τι είναι το τελικό στην Java;

Στο πρόγραμμα, μπορεί να υπάρχουν μεταβλητές διαφόρων τύπων. Αν υπάρχει μεταβλητή ως int x=1; αργότερα στο πρόγραμμα, αυτή η τιμή μεταβλητής μπορεί να αλλάξει σε κάποια άλλη τιμή. Μια μεταβλητή που δηλώνεται ως τελική και αρχικοποιείται με μια τιμή δεν μπορεί να αλλάξει αργότερα στο πρόγραμμα.

Διαφορά μεταξύ στατικού και τελικού στο Java_Figure 03
Διαφορά μεταξύ στατικού και τελικού στο Java_Figure 03

Εικόνα 03: Πρόγραμμα με τελική μεταβλητή και κληρονομικότητα

Σύμφωνα με το παραπάνω πρόγραμμα, το x είναι μια τελική μεταβλητή. Του εκχωρείται μια τιμή 5. Δεν μπορεί να αλλάξει κάποια άλλη τιμή γιατί έχει δηλωθεί ως τελική. Η Java υποστηρίζει αντικειμενοστραφή προγραμματισμό (OOP). Ένας πυλώνας του OOP είναι ένας πολυμορφισμός. Ένας τύπος πολυμορφισμού υπερισχύει. Η κλάση Α έχει τη μέθοδο εμφάνισης. Η κλάση Β επεκτείνει την κλάση Α και έχει τη δική της μέθοδο εμφάνισης. Κατά τη δημιουργία ενός αντικειμένου τύπου Β και την κλήση της μεθόδου εμφάνισης θα εκτυπωθεί το "B" ως έξοδος. Η μέθοδος εμφάνισης της κλάσης Α αντικαθίσταται από τη μέθοδο εμφάνισης της κλάσης Β.

Εάν ο προγραμματιστής τι πρέπει να αποφύγει να παρακάμψει μια μέθοδο, τότε μπορεί να χρησιμοποιήσει την τελική λέξη-κλειδί για αυτήν τη μέθοδο. Εάν η μέθοδος εμφάνισης στην κλάση Α είναι τελική, η μέθοδος εμφάνισης στην κατηγορία Β θα δώσει ένα σφάλμα επειδή αυτή η μέθοδος δεν μπορεί να παρακαμφθεί.

Διαφορά μεταξύ στατικού και τελικού στο Java_Figure 04
Διαφορά μεταξύ στατικού και τελικού στο Java_Figure 04

Εικόνα 04: τελική λέξη-κλειδί στη Μέθοδο

Ένας άλλος πυλώνας του OOP είναι η κληρονομικότητα. Βοηθά στην επαναχρησιμοποίηση του ήδη υπάρχοντος κώδικα. Η νέα κλάση μπορεί να επεκταθεί από την υπάρχουσα κλάση και να χρησιμοποιήσει τα μέλη δεδομένων και τις μεθόδους της υπάρχουσας κλάσης. Εάν απαιτείται να σταματήσει να κληρονομεί μια κλάση, ο προγραμματιστής μπορεί να χρησιμοποιήσει τη λέξη-κλειδί «τελική». Ανατρέξτε στο παρακάτω πρόγραμμα.

Ke3y Διαφορά μεταξύ στατικού και τελικού στην Java
Ke3y Διαφορά μεταξύ στατικού και τελικού στην Java

Εικόνα 05: τελική λέξη-κλειδί στην Τάξη

Σύμφωνα με το παραπάνω πρόγραμμα, η τάξη Α δηλώνεται ως οριστική. Όταν η κλάση Β επεκτείνει την Α, δίνει ένα σφάλμα επειδή η κλάση Α δηλώνεται ως τελική. Δεν μπορεί να κληρονομηθεί από άλλες κλάσεις.

Ποια είναι η ομοιότητα μεταξύ στατικής και τελικής στην Java;

Και οι στατικές και οι τελικές είναι λέξεις-κλειδιά στην Java

Ποια είναι η διαφορά μεταξύ στατικής και τελικής στην Java;

static vs τελικό σε Java

Στατική λέξη-κλειδί υποδηλώνει ότι μπορεί να προσπελαστεί μια μεταβλητή μέλους ή μια μέθοδος χωρίς να απαιτείται μια παρουσίαση της κλάσης στην οποία ανήκει. Η τελική λέξη-κλειδί υποδηλώνει μια οντότητα που μπορεί να εκχωρηθεί μόνο μία φορά.
Μεταβλητές
Οι στατικές μεταβλητές μπορούν να αρχικοποιηθούν ξανά. Οι τελικές μεταβλητές δεν μπορούν να αρχικοποιηθούν ξανά.
Μέθοδοι
Μπορεί να κληθεί με άλλες στατικές μεθόδους και πρόσβαση μόνο στα στατικά μέλη της κλάσης. Οι τελικές μέθοδοι δεν μπορούν να παρακαμφθούν.
Τάξη
Το αντικείμενο στατικής κλάσης δεν μπορεί να δημιουργηθεί. Περιέχει μόνο στατικά μέλη. Η τελική κλάση δεν μπορεί να κληρονομηθεί από άλλες κλάσεις.
Αποκλεισμός
Η στατική λέξη-κλειδί μπορεί να χρησιμοποιηθεί σε ένα μπλοκ. Η τελική λέξη-κλειδί δεν χρησιμοποιείται με μπλοκ.

Σύνοψη – στατικό εναντίον τελικό σε Java

Αυτό το άρθρο εξέτασε δύο λέξεις-κλειδιά στην Java, όπως στατικές και τελικές. Η διαφορά μεταξύ στατικής και τελικής στην Java είναι ότι το static χρησιμοποιείται για να ορίσει το μέλος κλάσης που μπορεί να χρησιμοποιηθεί ανεξάρτητα από οποιοδήποτε αντικείμενο της κλάσης ενώ το final χρησιμοποιείται για να δηλώσει μια σταθερή μεταβλητή ή μια μέθοδο που δεν μπορεί να παρακαμφθεί ή μια κλάση που δεν μπορεί να κληρονομηθεί.

Συνιστάται: