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 chapitre 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
bonne généricité de l'extension gràce aux classes abstraites, à
l'héritage multiple et aux 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.