
166 ◾ Software Essentials
Inheritance of interface rests on an external perspective: how are types
used and what functionality do they provide? In contrast, inheritance
of implementation rests upon an internal perspective: develop a type by
incorporating existing code. Inheritance of implementation is also known
as code reuse and is considered an expedient, practical approach to so-
ware design even though it can compromise type consistency.
Inheritance of implementation is oen described as an impure form of
inheritance since it may not completely support the is-a relationship. e
child class inherits all data and functionality from the ...