Il me semble que la fonctionnalité de C# 8.0, l'implémentation par défaut des membres de l'interface, permet essentiellement de créer des implémentations au niveau de l'interface. Si l'on ajoute à cela le fait qu'une classe peut implémenter plusieurs interfaces, cela semble étrangement proche d'une structure d'héritage multiple pour les classes. D'après ce que j'ai compris, cela semble aller à l'encontre de l'essence même de la conception du langage.
D'où vient cette divergence et quelle place laisse-t-elle aux classes abstraites ?
Cette question a été suggéré comme réponse à la mienne et bien qu'il soit utile, il ne répond pas exactement à ma question. Pour être plus précis :
- J'ai toujours pensé que l'héritage unique était l'un des principes fondamentaux de la conception de C#, c'est pourquoi la décision d'implémenter cette fonctionnalité me surprend, et je serais intéressé de savoir d'où elle vient (spécifiquement de C#).
- La question liée ne répond pas à la place qu'elle laisse aux classes abstraites.