Ich wechsle schon seit einiger Zeit von C# zu Java. Ich hoffe, dass Sie verstehen, wenn Sie unterschiedliche Meinungen haben Als ich Java lernte, hatte ich das Gefühl, dass die Syntax von Java ungefähr mit der von C# übereinstimmt (es sollte gesagt werden, dass C# ungefähr mit Java identisch ist. Schließlich imitiert Microsofts C# absichtlich die grammatikalischen Gewohnheiten von Java)
Bill Gates sagte einmal: „Java ist die herausragendste Programmiersprache.“
Zurück zum Geschäft: Lassen Sie uns die Syntaxunterschiede zwischen Java und C# untersuchen. . .
1. Namespace und Paket
Um Klassen zu organisieren, die ähnliche Funktionen gemeinsam implementieren, führt C# das Konzept des Namespace (Namespace) ein.
Das entsprechende Ding heißt in Java Paket (Paket)
2. Unterschiede in der Klassenzugriffskontrolle
C# hat nur zwei Typen: öffentlich und standardmäßig (dasselbe wie intern)
öffentlich kann von allen Klassen zugegriffen werden (im selben Projekt und in verschiedenen Projekten)
intern (in Wenn vorhanden ist kein Steuerzeichen vor dem Klassenschlüsselwort, der Standardwert ist intern), was darauf hinweist, dass auf die Klasse nur im selben Projekt zugegriffen werden kann
Es gibt nur zwei Arten von Java: öffentlich und standardmäßig
öffentlich kann von allen aufgerufen werden Klassen
Standard (Wenn vor dem Klassenschlüsselwort kein Steuerzeichen steht) kann nur von allen Klassen im selben Paket darauf zugegriffen werden
3 Zugriffskontrolle von Klassenmitgliedern
Es gibt vier Typen in C#: öffentlich , protected, private (Standard), internal (Beachten Sie, dass internal und default hier unterschiedlich sind)
public kann von allen Klassen aufgerufen werden
protected kann nur von Unterklassen aufgerufen werden
private (d. h. standardmäßig, wenn es werden keine Steuersymbole geschrieben) kann nur von Klassen zugegriffen werden Interner Zugriff
intern kann von Klassen im selben Projekt zugegriffen werden
Java hat außerdem vier Typen: öffentlich, geschützt, privat und Standard
öffentlich kann zugegriffen werden von allen Klassen
protected kann von beiden Klassen im selben Projekt aufgerufen werden Andere Klassen können darauf zugreifen, aber auch Unterklassen in verschiedenen Paketen können darauf zugreifen
private kann nur innerhalb der Klasse verwendet werden
Standardmäßig ist dies möglich Andere Klassen in diesem Paket können darauf zugreifen. Wenn sich eine Unterklasse und die übergeordnete Klasse in unterschiedlichen Paketen befinden, können Unterklassen nicht auf die Standardzugriffskontrollmitglieder in der übergeordneten Klasse zugreifen
4. Die Vererbung von Klassen in C# wird durch Doppelpunkt implementiert:, und extensions werden in Java implementiert.
Die Schnittstelle wird in C# durch Doppelpunkt implementiert. In Java werden implementiert.
Versiegelte Klassen werden in C# mit protected implementiert, und final wird in Java mit implementiert const und final werden in Java mit Set- und Get-Codeblöcken implementiert, und in Java werden im Allgemeinen Felder verwendet, die denen in C# ähneln, oder Setter und Getter-Konstruktoren, um sie zu implementieren 🎜>Es gibt ein Konzept einer partiellen Klasse in C#, aber kein Konzept in Java.
Es gibt ein schreibgeschütztes modifiziertes Attribut in Java, Nein.
Es gibt virtuelle und überschriebene modifizierte virtuelle Methoden und überschriebene Methoden in C#, aber nicht in Java. Die Methoden in der Standard-Elternklasse in Java sind alle virtuell
Es gibt statische{}, synchronisierte{} Codeblöcke in Java Concept, es gibt kein Konzept in C#
In Java gibt es ein Label-Konzept (z. B. labelA:), in C# gibt es kein Konzept.
In C# verwendet die Unterklasse base.method(), um die Methode der übergeordneten Klasse aufzurufen, und in Java Verwenden Sie super.method()
In C# wird is verwendet, um zu bestimmen, ob eine Instanz zu einer bestimmten Klasse gehört. In Java wird Instanz von verwendet.
In C# wird foreach(int i in array) zum Durchlaufen verwendet jedes Element im Array. In Java, for( int i : array)
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die syntaktischen Unterschiede zwischen Java und C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!