Proceedings 1996 Asia-Pacific Software Engineering Conference
Download PDF

Abstract

In object-oriented languages, encapsulation and inheritance play an important part for software reusability and maintainability. The separation of subtyping and inheritance makes inheritance a more flexible mechanism reusing code. The main enhanced flexibility is that it is allowed for subclasses to redefine inherited methods to change their specifications. However, it results in an encapsulation issue derived from the semantics of inheritance, which compromises severely reusability and maintainability in object-oriented languages. In this paper, we present a modified inheritance mechanism, which overcomes this encapsulation issue, and give its denotational semantics. This modified inheritance mechanism has been introduced in NDOOP, an object-oriented extension of Pascal we are developing.
Like what you’re reading?
Already a member?
Get this article FREE with a new membership!