Σε μια αντικειμενοστρεφή (object oriented)
γλώσσα το πρόγραμμα βασίζεται στην αποστολή
μηνυμάτων (messages)
ανάμεσα σε
αντικείμενα (objects)
που παριστάνουν τις οντότητες του προγράμματος.
Τα αντικείμενα χαρακτηρίζονται από τις
ιδιότητες (fields) και τις
μεθόδους (methods) τους.
Τα αντικείμενα ομαδοποιούνται σε
κλάσεις (class) (ή τάξεις) (εργοστάσια παραγωγής αντικειμένων).
Οι τάξεις δομούνται ιεραρχικά και
κληρονομούν (inherit)
τα χαρακτηριστικά των προπατόρων τους.