A BEHAVIORAL NOTION OF SUBTYPING

Authors
Citation
Bh. Liskov et Jm. Wing, A BEHAVIORAL NOTION OF SUBTYPING, ACM transactions on programming languages and systems, 16(6), 1994, pp. 1811-1841
Citations number
37
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
ISSN journal
01640925
Volume
16
Issue
6
Year of publication
1994
Pages
1811 - 1841
Database
ISI
SICI code
0164-0925(1994)16:6<1811:ABNOS>2.0.ZU;2-7
Abstract
The use of hierarchy is an important component of object-oriented desi gn. Hierarchy allows the use of type families, in which higher level s upertypes capture the behavior that all of their subtypes have in comm on. For this methodology to be effective, it is necessary to have a cl ear understanding of how subtypes and supertypes are related. This pap er takes the position that the relationship should ensure that any pro perty proved about supertype objects also holds for its subtype object s. It presents two ways of defining the subtype relation, each of whic h meets this criterion, and each of which is easy for programmers to u se, The subtype relation is based on the specifications of the sub- an d supertypes; the paper presents a way of specifying types that makes it convenient to define the subtype relation. The paper also discusses the ramifications of this notion of subtyping on the design of type f amilies.