Concept in
object-oriented design. Creation of object classes by
deriving a new class from one or more base-classes. The derived class
inherits behaviour and state of its bases. It can override all and /or parts of the inherited functionality to suit its own purposes.
- Implementation inheritance causes the same intertwining and brittleness that have been observed when goto statements are overused. As a result, OO systems often suffer from complexity and lack of reuse.
- — John Ousterhout, Scripting: Higher-Level Programming for the 21st Century, March 1998
Discussion edit
escargo 26 May 2003 - Depending on the language,
deriving might be known as
extending. Additionally, in some languages, it might not be possible to override inherited functions if the code says that overriding should not be possible.
TV (27 may 03) Inheriting suggests you get something of value. I guess a lot of inheriting has to do with the method you can apply a certain function from a certain library to a certain datastructure. We seem to have all inherited string.h and libstring.o or something, which doesn't make us all wordprocessors. Also, the idea has to do with a hierarchical way of accessing various libraries in programs and their source code . In french I guess the word is 'succession' which is also intersting as in tending to.
See also edit