Abstract
If the object-oriented style of programming hopes to live up to its potential as an improved methodology for software programming, a clear understanding of how to use types and inheritance is essential. Our experiences with using object-oriented languages and teaching object-oriented techniques to other programmers have shown that effective use of types and inheritance may be problematic. There are no concrete guidelines to assist programmers, and the existing aphorisms often create interpretation problems for novice object-oriented programmers. In this paper we look at how types, subtyping, and inheritance are used in object-oriented languages. We discuss the different ways that types and type hierarchies can be used to structure programs. We illustrate appropriate use of these concepts through examples and develop guidelines to assist programmers in using the object-oriented methodology effectively.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Alexander Borgida. Features of languages for the development of information systems at the conceptual level. IEEE Software 2(1), January 1985.
Gael Curry, Larry Baer, Daniel Lipkie, and Bruce Lee. Traits: an approach to multiple-inheritance subclassing. Proceedings of the SIGOA Conference on Office Information Systems. Philadelphia, 1982.
Adele Goldberg and David Robson. Smalltalk-80: The Language and its Implementation. Addison-Wesley, Reading, Massachusetts, 1983.
Patrick O’Brien. Trellis Object-Based Environment: Language Tutorial. Digital Equipment Corporation technical report DEC-TR-373, November 1985.
Craig Schaffert, Topher Cooper, and Carrie Wilpolt. Trellis Object-Based Environment: Language Manual. Digital Equipment Corporation technical report DEC-TR-372, November 1985.
Craig Schaffert, Topher Cooper, Bruce Bullis, Mike Kilian, and Carrie Wilpolt. An Introduction to Trellis/Owl. Proceedings of the ACM Conference on Object-Oriented Programming Systems, Languages, and Applications. Portland, Oregon, 1986.
Mary Shaw. Abstraction techniques in modern programming languages. IEEE Software 1(4), October 1984.
Niklaus Wirth. Program development by step-wise refinement. Communications of the ACM 14(4): 222–227, April 1971.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Halbert, D.C., O’Brien, P.D. (1987). Using Types and Inheritance in Object-Oriented Languages. In: Bézivin, J., Hullot, JM., Cointe, P., Lieberman, H. (eds) ECOOP’ 87 European Conference on Object-Oriented Programming. ECOOP 1987. Lecture Notes in Computer Science, vol 276. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47891-4_3
Download citation
DOI: https://doi.org/10.1007/3-540-47891-4_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-18353-2
Online ISBN: 978-3-540-47891-1
eBook Packages: Springer Book Archive