Implementing mixins

Now that we know why multiple inheritance can be potentially dangerous, we will introduce a feature known as mixins. Mixins are an alternative to multiple inheritance with some limitations.

We are going to re-declare the Mammal and WingedAnimal classes to showcase how to work with mixins:

class Mammal { 
    public breath(): string { 
        return "I'm alive!"; 
    } 
} 
 
class WingedAnimal { 
    public fly(): string { 
        return "I can fly!"; 
    } 
} 

The two classes presented in the preceding example are not much different from the ones that we declared in the preceding sections. We have added some logic to the breath and fly methods, so we can have some values to help us understand this demonstration. It is also important to note that the Mammal ...

Get Learning TypeScript 2.x - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.