Plan du chapitre
Ce chapitre présente l'extension objet du langage Objective CAML. Cette
extension ne modifie en rien les éléments du langage déjà étudiés dans
les chapitres précédents. Seuls quelques nouveaux mots clés sont
réservés pour la syntaxe de la partie objet.
La première section décrit la syntaxe de la déclaration de classe, de
l'instanciation d'objet et de l'envoi de message. La deuxième section
explique les différentes relations entre classes. La troisième section
précise la notion de type objet et montre la richesse de
l'extension grâce aux classes abstraites, à l'héritage multiple et à
la généricité des classes paramétrées. La quatrième section détaille
la relation de sous-typage et montre son intérêt à travers le
polymorphisme d'inclusion. La cinquième section s'intéresse au style
fonctionnel en objet où l'on ne modifie plus l'état interne d'un objet
mais où on retourne une copie modifiée de l'objet receveur. La
sixième section précise les autres éléments de l'extension objet que
sont les interfaces et déclarations locales dans les classes qui
permettent de créer des variables de classe.