Scala, Design Patterns, Programming, Delegation, Coding.
Alternative to Inheritance for Code Reuse Object oriented languages are defined by four fundamental characteristics: encapsulation, abstraction, polymorphism and inheritance. Inheritance is a singular characteristic of object oriented languages that distinguish them from a procedural language. The