Voilà j'ai utilisé dans un projet java ce genre de joyeuseté :
De mémoire et java me l'a confirmer ce sont les classes dérivant de la classe abstraite qui doivent implémenter les méthodes de l'interface, même si la classe abstraite peut elle aussi implémenter les méthodes de cette interface, bon ca fonctionne nickel, mais voilà où ca devient marrant on m'a demandé un portage du code en c#, donc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 interface IAffichable { void Afficher(String msg); } abstract class Ecran implements IAffichable {} class Truc extends Ecran { public void Afficher(String msg) { System.out.println(msg); } }
par contre là ca ne compile plus il me demande à ce que la classe abstraite implémente obligatoirement les méthode de l'interface, C# aurait-il oublié cet élément de la POO ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 interface IAffichable { void Afficher(string msg); } abstract class Ecran:IAffichable {} class Truc:Ecran { public void Afficher(String msg) { Console.Writeline(msg); } }
Merci de votre aide, car là je ne comprends pas ...
Partager