The notion of class (or object pattern) as defined in most object-oriented languages is forrnahzed using known techniques from algebraic specifications, Inheritance can be viewed as a relation between classes, which suggests how classes can be arranged in hierarchies. The hierarchies contain two kinds of reformation: on the one hand, they indicate how programs are structured and how code is shared among classes; on the other hand, they give information about compati- ble assignment rules, which are based on subtyping. In order to distinguish between code sharing, which is related to lmplementatlonal aspects, and functional speclalizatlon, which is connected to the external behavior of objects, we introduce an algebraic specification-based formalism, by which one can specify the behavior of a class and state when a class inherits another one. It is shown that reusing inheritance can be reduced to specialization inheritance with respect to a virtual class The class model and the two distinct aspects of inheritance allow the defimtion of clean interconnection mechanisms between classes leading to new classes which mherlt from old classes them correctness and their semantics.

An Algebraic Theory of Class Specifications

PIERANTONIO, ALFONSO
1994

Abstract

The notion of class (or object pattern) as defined in most object-oriented languages is forrnahzed using known techniques from algebraic specifications, Inheritance can be viewed as a relation between classes, which suggests how classes can be arranged in hierarchies. The hierarchies contain two kinds of reformation: on the one hand, they indicate how programs are structured and how code is shared among classes; on the other hand, they give information about compati- ble assignment rules, which are based on subtyping. In order to distinguish between code sharing, which is related to lmplementatlonal aspects, and functional speclalizatlon, which is connected to the external behavior of objects, we introduce an algebraic specification-based formalism, by which one can specify the behavior of a class and state when a class inherits another one. It is shown that reusing inheritance can be reduced to specialization inheritance with respect to a virtual class The class model and the two distinct aspects of inheritance allow the defimtion of clean interconnection mechanisms between classes leading to new classes which mherlt from old classes them correctness and their semantics.
File in questo prodotto:
File Dimensione Formato  
p166-parisi-presicce.pdf

solo utenti autorizzati

Tipologia: Documento in Versione Editoriale
Licenza: Dominio pubblico
Dimensione 2.03 MB
Formato Adobe PDF
2.03 MB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: http://hdl.handle.net/11697/1183
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 5
  • ???jsp.display-item.citation.isi??? ND
social impact