Maison >développement back-end >Tutoriel C#.Net >Analyse comparative des différences entre C# et Java
Mêmes points :
sont tous des langages de programmation orientés objet et peuvent implémenter des idées orientées objet (encapsulation, héritage, polymorphisme)
Différences :
1. L'espace de noms en c# est similaire au package en Java, pour importer un package en Java, utilisez import en c# Utilisez using.
2. C# et Java entrent à partir de la fonction principale, mais la première lettre de la fonction principale en c# doit être en majuscule
3. Type de données : Java et c# sont fondamentalement les mêmes, mais Java La première lettre du type String doit être majuscule, mais en c# elle peut être minuscule ou majuscule, et il existe également un type booléen, qui est booléen en Java et bool en c#.
4. Nommage des variables : Le symbole $ peut être utilisé en Java, mais pas en C#.
5. Sortie : C# a trois façons d'afficher : Cosole.WriteLine(); Cosole.WriteLine (valeur à afficher) Cosole.WriteLine ("chaîne de format", liste de variables); l'utilisation est la même que la méthode system.out.println() en Java. La troisième méthode est basée sur la sortie d'un espace réservé, ce qui est plus pratique que Java
6. Instruction de flux de contrôle : C# est similaire à Java, et le switch en c# doit avoir une pause s'il y a du contenu après le cas ; Java n'a pas besoin de pause
7 Le modificateur final statique en Java. En C#, les constantes peuvent être déclarées à l'aide du mot-clé const.
8. Modificateurs d'accès : Les modificateurs d'accès en C# correspondent essentiellement à ceux de Java, mais il y a un supplément interne. En bref, C# dispose de 5 types d'accessibilité comme suit :
public : les membres sont accessibles depuis n'importe quel code. protected : les membres ne sont accessibles qu’à partir des classes dérivées.
interne : les membres ne sont accessibles qu'à partir de la même assemblée.
protected : le membre n'est accessible qu'à partir des classes dérivées au sein du même assembly.
privé : les membres ne sont accessibles que dans le cours en cours.
9. Puisque le mot-clé final n'existe pas en C#, si vous souhaitez qu'une classe ne soit plus dérivée, vous pouvez utiliser le mot-clé scellé pour la sceller.
10. Collections : les deux langages ont des collections ArrayList, et l'accès aux valeurs via des clés est HashMap en Java et HashTable en C#. C# est plus simple que les collections multigénériques Java List8742468051c85b06f0a0af9e3e506b5c et Dictionaryb77a8d9c3c319e50d4b02a976b347910. Il n'est pas nécessaire de les déballer et de les emballer, et c'est plus sûr.
11. Héritage : Java utilise le mot-clé extends, et C# utilise uniquement ":". Pour appeler la méthode constructeur de la classe parent, Java utilise le mot-clé super, tandis que C# utilise le mot-clé base.
12. Polymorphisme : les classes abstraites et les méthodes abstraites utilisent le mot-clé abstract. Si une autre classe en Java en hérite, elle peut directement remplacer cette méthode ; tandis qu'en C#, le mot-clé override doit être ajouté pour l'implémenter. C# dispose également d'une méthode virtuelle de plus que Java pour implémenter le polymorphisme.
13. Interface : Ils sont tous définis avec le mot-clé interface, Java est implémenté avec le mot-clé Implements ; C# est implémenté avec : :. En C#, toutes les méthodes d’une interface sont des méthodes publiques par défaut. En Java, une déclaration de méthode peut avoir le modificateur public (même si cela n'est pas obligatoire), mais en C#, il est illégal de spécifier explicitement le modificateur public pour une méthode d'une interface.
14. L'opérateur is en C# est le même que l'opérateur instanceof en Java. Les deux peuvent être utilisés pour tester si une instance d'un objet appartient à un type spécifique. Il n’existe pas d’opérateur équivalent en Java à l’opérateur as en C#. L'opérateur as est très similaire à l'opérateur is, mais il est plus « agressif » : si le type est correct, l'opérateur as tente de convertir la référence de l'objet testé en type cible, sinon, il définit la référence de variable sur null ; .
15. Déclarer des tableaux
En Java, la méthode de déclaration des tableaux est très flexible. En fait, il existe de nombreuses méthodes légales pour déclarer des tableaux . Par exemple, les lignes de code suivantes sont équivalentes :
int[] x = { 0, 1, 2, 3 }; int x[] = { 0, 1, 2, 3 };
Mais en C#, seule la première ligne de code est légale, et [] ne peut pas être placé après le nom de la variable.
Merci à tous d'avoir lu, j'espère que vous en bénéficierez beaucoup.
Cet article est reproduit à partir de : https://blog.csdn.net/qq_39657909/article/details/80781481
Tutoriel recommandé : "Langage C"
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!