On the notion of inheritance

  • Authors:
  • Antero Taivalsaari

  • Affiliations:
  • Nokia Research Center, Helsinki, Finland

  • Venue:
  • ACM Computing Surveys (CSUR)
  • Year:
  • 1996

Quantified Score

Hi-index 0.02

Visualization

Abstract

One of the most intriguing—and at the same time most problematic—notions in object-oriented programing is inheritance. Inheritance is commonly regarded as the feature that distinguishes object-oriented programming from other modern programming paradigms, but researchers rarely agree on its meaning and usage. Yet inheritance of often hailed as a solution to many problems hampering software development, and many of the alleged benefits of object-oriented programming, such as improved conceptual modeling and reusability, are largely credited to it. This article aims at a comprehensive understanding of inheritance, examining its usage, surveying its varieties, and presenting a simple taxonomy of mechanisms that can be seen as underlying different inheritance models.