Title :
Weak subtyping and genericity
Author :
Heberle, Andreas ; Löwe, Welf ; Neumann, Rainer ; Zimmermann, Wolf
Author_Institution :
Inst. fur Programmstrukturen & Datenorgan., Karlsruhe Univ., Germany
Abstract :
In the past, object-oriented design focused on encapsulation and inheritance as primary concepts. As a consequence, there has been a lot of work in the domain of inheritance and the associated problems, i.e. covariant type systems. Recently, parameterized (generic) classes have become more popular in object-oriented design. While the use of genericity in functional languages is well known and delivers no major problems, the situation in object-oriented languages differs: the combination of inheritance with genericity raises problems. This paper describes the theoretical foundations of designing and using generic classes in object-oriented systems. It discusses the possible relationships between generic subclasses as well as those between specialized instances of one generic class. The ideas presented use the concept of context dependent subtypes, so-called weak subtypes, to define criteria for correctness, well-formedness and substitutability
Keywords :
data encapsulation; inheritance; object-oriented languages; object-oriented programming; context dependent subtypes; correctness; covariant type systems; encapsulation; generic subclasses; genericity; inheritance; object-oriented design; object-oriented languages; parameterized classes; substitutability; weak subtyping; well-formedness; Electronic mail; Encapsulation; Java; Modems; Programming profession;
Conference_Titel :
Technology of Object-Oriented Languages and Systems, 2000. TOOLS 34. Proceedings. 34th International Conference on
Conference_Location :
Santa Barbara, CA
Print_ISBN :
0-7695-0774-3
DOI :
10.1109/TOOLS.2000.868967