1. Définissez les membres dans l'interface
C#, comme le montre la figure J'ai ajouté un champ n à l'interface ITest, puis vs affiche directement une ligne inférieure rouge , et l'erreur est L'interface ne peut pas contenir le champ
java, comme indiqué ci-dessous. La compilation signale également une erreur, mais ce n'est pas que l'interface ne peut pas être incluse mais. que l'affectation est manquante, attribuons donc la valeur et revoyons. Vous pouvez voir qu'il n'y a pas de problème, c'est-à-dire que les variables membres sont publiques static final par défaut. Nous savons que final doit se voir attribuer une valeur, donc si elle n'est pas attribuée, l'endroit sera compilé.
Après affectation, il a été constaté qu'il n'y avait aucun problème, comme indiqué ci-dessous :
2. méthodes dans l'interface
C#, nous savons tous que les méthodes dans une interface doivent être implémentées par des sous-classes, donc nos méthodes dans l'interface ne peuvent pas être implémentées si une implémentation est ajoutée, il y aura des erreurs. L'erreur est que l'interface ne peut pas être définie.
Java, c'est-à-dire jdk1.8, a ajouté quelques méthodes qui peuvent être implémentées. Il peut être implémenté en mode par défaut et statique. Comme indiqué ci-dessous, il n’y a aucun problème de compilation. Alors, C# a-t-il des méthodes par défaut et statiques ? Dans l'interface, désolé il n'y en a pas.
Il n'existe pas en c# Pour les méthodes statiques, les méthodes d'interface par défaut ne peuvent pas être définies. Parce que c'est invalide.
Résumé :
1. En Java, les interfaces peuvent contenir des champs, mais ces champs sont implicitement statiques et finaux, ce que C# n'autorise pas s'il y en a. champs dans l'interface, le compilateur affichera une erreur lors de la compilation ;
2. En Java, les déclarations de méthode peuvent avoir des modificateurs publics (même si cela n'est pas nécessaire), mais en C#, explicitement, il est illégal de spécifier le modificateur public pour une méthode dans une interface.
Tutoriel recommandé : Introduction au développement Java
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!