As far as I know, Groovy already has mixins, Scala has traits. The C family has multiple inheritance. So, why is the new functionality in Java called "extension methods"? Is this a different name for the same, or was there a different reason? What are the differences between traits and mixins? what do they add and what do they lack?
Personaly I see them more as "implementation methods" than "extension methods".
sm4
source share