Η κλάση Object
Όλες οι κλάσεις στην Java είναι απόγονοι της κλάσης Object. Για παράδειγμα, η κλάση Integer κληρονομεί την κλάση Νumber που κληρονομεί την κλάση Object.
java.lang.Object
|
----|
v
java.lang.Number
|
----|
v
java.lang.Integer
Λόγω της ύπαρξης της κλάσης Object όλα τα αντικείμενα στην Java κληρονομούν συγκεκριμένες μεθόδους που ορίζονται στην κλάση αυτή. Τις μεθόδους αυτές μπορείτε αν θέλετε να τις επαναορίσετε στις κλάσεις που δημιουργείτε ή να τις αφήσετε ως έχουν. Οι κυριότερες μέθοδοι της κλάσης Object είναι οι εξής:
public boolean equals(Object obj): Η μέθοδος ελέγχει αν δύο αντικείμενα είναι ίδια. Εάν δεν την επαναορίσετε, η συγκεκριμένη μέθοδος ελέγχει εάν το αντικείμενο που την καλεί ταυτίζεται με το όρισμα που λαμβάνει. Μόνο στην περίπτωση που αυτά είναι ίδια επιστρέφει true, διαφορετικά επιστρέφει false.
public int hashCode(): Επιστρέφει έναν αριθμό (hash) για το συγκεκριμένο αντικείμενο. Ο αριθμός αυτός θα πρέπει να είναι μοναδικός για κάθε αντικείμενο. Κάθε κλήση της συγκεκριμένης μεθόδου σε ένα αντικείμενο πρέπει να επιστρέφει πάντα το ίδιο αποτέλεσμα. Δεν χρειάζεται να επαναορίσετε τη συγκεκριμένη συνάρτηση.
public String toString(): Επιστρέφει μία αναπαράσταση σε μορφή
String για το αντικείμενο. Η
default υλοποίηση της μεθόδου ισοδυναμεί με την παρακάτω έκφραση. Συνιστάται ο επαναορισμός της μεθόδου της συγκεκριμένης κλάσης σε όλες τις κλάσεις που δημιουργείτε. Ο επαναορισμός της συγκεκριμένης μεθόδου μπορεί να χρησιμοποιηθεί για αποσφαλμάτωση των προγραμμάτων σας (debugging).
getClass().getName() + '@' + Integer.toHexString(hashCode())