Βασική διαφορά : Η κατηγορία και το αντικείμενο είναι δύο πιο σημαντικές έννοιες μιας γλώσσας προγραμματισμού προσανατολισμένης στο αντικείμενο. Η κύρια διαφορά μεταξύ των δύο είναι ότι η τάξη είναι ένα σχέδιο που χρησιμοποιείται για τη δημιουργία διαφορετικών αντικειμένων του ίδιου τύπου.
Ο προγραμματισμός αντικειμένων (OOP) είναι ένα πολύ δημοφιλές στυλ προγραμματισμού λόγω της ικανότητάς του να χειρίζεται περίπλοκες εφαρμογές με περισσότερους κωδικούς. Η κλάση και το αντικείμενο είναι δύο όροι που χρησιμοποιούνται συνήθως στις γλώσσες OOP. Στην πιο βασική μορφή της, τα αντικείμενα αποτελούν την παράδοση των τάξεων. Αυτό το άρθρο διαφοροποιεί τους δύο όρους.
Ένα αντικείμενο είναι μια επέκταση του αφηρημένου τύπου δεδομένων, με την προσθήκη στον πολυμορφισμό και την κληρονομικότητα. Ένα αντικείμενο έχει κατάσταση (δεδομένα) και συμπεριφορά (κώδικας). Κατά τον προγραμματισμό, το κλειδί είναι ότι κάθε αντικείμενο από μόνο του είναι υπεύθυνο για την εκτέλεση εργασιών.
Ένα αντικείμενο περιέχει ιδιότητες και μεθόδους που απαιτούνται για να είναι χρήσιμος ένας συγκεκριμένος τύπος δεδομένων. Οι ιδιότητες ενός αντικειμένου είναι αυτό που γνωρίζει και οι μέθοδοι του είναι αυτό που μπορεί να κάνει. Οι μέθοδοι παρέχουν λειτουργικότητα σε εφαρμογές και διασφαλίζουν ότι τα δεδομένα ενός αντικειμένου χρησιμοποιούνται σωστά. Οι μέθοδοι επιτρέπουν επίσης την κρυφή και την τυποποιημένη εκτέλεση των εργασιών για συγκεκριμένες λειτουργίες για διαφορετικούς τύπους αντικειμένων. Οι μέθοδοι χρησιμοποιούνται για την πρόσβαση στα αντικείμενα μιας τάξης. Όλη η αλληλεπίδραση γίνεται μέσω των μεθόδων του αντικειμένου. Αυτό είναι γνωστό ως ενθυλάκωση δεδομένων. Τα αντικείμενα χρησιμοποιούνται επίσης για απόκρυψη δεδομένων ή κωδικών.
Μια κατηγορία λέγεται ότι είναι ένα σχέδιο ενός αντικειμένου. Πρόκειται για έναν εκτάσιμο οδηγό που χρησιμοποιείται για τη δημιουργία αντικειμένων. είναι μια υπορουτίνα που δημιουργεί ένα αντικείμενο. Μια κλάση δεν αντιπροσωπεύει το αντικείμενο. αντιπροσωπεύει όλες τις πληροφορίες και τις μεθόδους που ένα αντικείμενο πρέπει να έχει. Μια κλάση μπορεί να χρησιμοποιηθεί για την εμφάνιση πολλαπλών αντικειμένων. Θεωρείται ως εκτεταμένη δήλωση ΤΥΠΟΥ. Παρακάτω είναι ένα βασικό παράδειγμα:
δείγμα κλάσης
{
δημόσιο στατικό κενό κύρια (String [] args)
{
String sampleText = "Hello world!";
System.out.println (sampleText);
}}
}}
Η παραπάνω κλάση, που ονομάζεται 'Δείγμα', περιλαμβάνει μια μεμονωμένη μέθοδο που ονομάζεται κύρια. Στο κύριο κείμενο, το κείμενο του μεταβλητού δείγματος ορίζεται ως "Hello world!" Η κύρια μέθοδος επικαλείται το σύστημα κλάσης από τη βιβλιοθήκη της Java, η οποία περιέχει τη μέθοδο 'out.println', η οποία χρησιμοποιείται για την εκτύπωση του δείγματος κειμένου στο κείμενο εξόδου παράθυρο.
Οι τάξεις αποτελούν θεμελιώδες μέρος του OOP. Επιτρέπουν την απομόνωση μεταβλητών και μεθόδων σε συγκεκριμένα αντικείμενα, αντί να είναι προσβάσιμα από όλα τα μέρη ενός προγράμματος. Αυτή η ενθυλάκωση δεδομένων προστατεύει κάθε κατηγορία από αλλαγές σε άλλα μέρη του προγράμματος. Χρησιμοποιώντας τις κλάσεις, οι προγραμματιστές μπορούν να δημιουργήσουν δομημένα προγράμματα με πηγαίο κώδικα που μπορούν εύκολα να τροποποιήσουν τα προγράμματα.
Σύγκριση μεταξύ αντικειμένου και κλάσης:
Αντικείμενο | Τάξη | |
Ορισμός | Ένα αντικείμενο ορίζεται ως οποιαδήποτε οντότητα που μπορεί να χρησιμοποιηθεί χρησιμοποιώντας εντολές στο OOP. | Μια κλάση χρησιμοποιείται στο OOP για να περιγράψει ένα ή περισσότερα αντικείμενα. |
Μεταβλητές | Είναι μια μεταβλητή. | Είναι ο τύπος. |
Εννοια | Είναι μια παράσταση της τάξης. | Πρόκειται για μια εκτεταμένη έννοια των δομών δεδομένων. |
Μνήμη | Η μνήμη διατίθεται. | Δεν υπάρχει μνήμη. |
Παράδειγμα | #περιλαμβάνω χρησιμοποιώντας τον χώρο ονομάτων std. ορθογώνιο τάξης { int width, height; δημόσιο: άκυρη set_values (int, int); περιοχή int () {πλάτος επιστροφής * ύψος} }, κενό ορθογώνιο :: set_values (int x, int y) { πλάτος = x; ύψος = y; }} int main () { Ορθογώνιο ορθογώνιο, ορθογώνιο. rect.set_values (3, 4); rectb.set_values (5, 6); cout << "περιοχή rect:" << rect.area () << endl; cout << "περιοχή rectb:" << rectb.area () << endl; επιστροφή 0? }} | ορθογώνιο τάξης { int width, height; δημόσιο: άκυρη set_values (int, int); περιοχή int (κενό); } rect; |
Αναγνωριστικό | Το όνομα_αντικειμένων είναι μια προαιρετική λίστα ονομάτων για αντικείμενα αυτής της κλάσης. | Το 'class_name' είναι έγκυρο αναγνωριστικό για την κλάση. |
Σκοπός | Αφαίρεση δεδομένων και περαιτέρω κληρονομικότητα | ομαδοποίηση δεδομένων |
Τύπος | Αναφορά | αξία |