An algebraic view of inheritance and subtyping in object oriented programming
In Object Oriented Programming the powerful mechanism of inheritance allows the definition of classes starting from variables and methods of another class previously defined. Inheritance can be viewed as a relation between classes, which suggests how classes can be arranged in hierarchies. The hiera...
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Tagungsbericht |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | In Object Oriented Programming the powerful mechanism of inheritance allows the definition of classes starting from variables and methods of another class previously defined. Inheritance can be viewed as a relation between classes, which suggests how classes can be arranged in hierarchies. The hierarchies contain two kind of information: on the one hand, they indicate how programs are structured, how code is shared among classes; on the other hand, they give information about compatible assignment rules, which are based on subtyping.
In order to distinguish between code sharing, which is related to implementational aspects, and functional specialization, 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 is to be considered subtype or inherits another one. It is shown that implementation inheritance can be reduced to specialization inheritance with respect to a virtual class. |
---|---|
ISSN: | 0302-9743 1611-3349 |
DOI: | 10.1007/3540547428_58 |