WikiDer > J♯
J# (ausgesprochen als J scharf) ist Microsofts Implementierung von SonnenJava. J# ist im Grunde eine Kopie von Java, die es Java-Programmierern erleichtert, ihre vorhandenen Java-Anwendungen darauf zu übertragen .GERADERahmen. Dies gilt jedoch nicht für verwendete Java-Dienstprogrammklassen. Die Stärke von J# ist, dass es mit Java funktioniert Byte-Code (Compiler-generierter Code, der von a . ausgeführt wird virtuelle Maschine), wenn Sie mit dem Java-Quellcode selbst umgehen können. Ersteres ist von großem Vorteil, wenn der ursprüngliche Quellcode nicht (mehr) verfügbar ist (was relativ selten vorkommt).
Für J# sind weniger Hintergrundinformationen verfügbar als für C# oder VB.NET. J# hat jedoch Zugriff auf alle Funktionen, die in der CLR (Common Language Runtime) bereitgestellt wird. Wenn nur Java-Bytecode ausgeführt werden muss, dann IKVM.NET (ein Java-Framework, das auf dem .NET-Framework läuft) ist eine gute Alternative.
Unterschiede zwischen J# und Java
Im Allgemeinen ist die Syntax gleich, es wurden jedoch einige Änderungen in J# vorgenommen, um die Funktionalität von .NET zu unterstützen. Standardmäßig unterstützt Java keine Eigenschaften. Um diese Funktionalität bereitzustellen, müssen Getter und Setter in J# bestimmte Bedingungen erfüllen.
Beispiel für eine Klasse mit einem Setter und einem Getter:
ÖffentlichkeitKlasseEigentum{PrivatgeländeZeichenfolgeName;/** @Eigentum */ÖffentlichkeitLeereName einsetzen(ZeichenfolgeName){diese.Name=Name;}/** @Eigentum */ÖffentlichkeitZeichenfolgeget_Name(){Rückkehrdiese.Name;}}Wie oben muss eine Eigenschaft das Schlüsselwort enthalten Eigentum im Javadoc Stil, also mit a @ Vor. Außerdem müssen die Funktionen mit get_ und set_ beginnen, und die Variable Der in der Funktion verwendete Name unterscheidet sich vom Variablennamen, wie er in der Klasse definiert ist. Die Namen der Funktionen, die zu derselben Eigenschaft gehören, müssen gleich sein, um Lese- und Schreibfunktionen zu erhalten, aber um beispielsweise eine Eigenschaft schreibgeschützt zu machen, kann der Setter natürlich weggelassen werden.
Einige Unterschiede zu Java bestehen darin, dass J# nicht in Java-Bytecode kompiliert wird, dass die Entwicklung Java-Applets wird nicht unterstützt, noch ist die Möglichkeit, Java-Applets in einem Webbrowser. Endlich, das Native Java-Schnittstelle und ersetzte das Raw Native Interface durch P/Invoke und die Verwendung von Fernmethodenaufruf nicht unterstützt.
Beispiele
Wenn eine Primzahl ist, zeigen Sie die Teiler an:
PrivatgeländeLeerebutton1_Klick(ObjektAbsender,System.EventArgse){booleschAhle=wahr;ZeichenfolgestrNummer,Teiler="";doppeltdblNummer;intDivisor=2;// Textfeld lesentextBox1.Wählen Sie Alle();strNummer=textBox1.get_SelectedText();dblNummer=System.Konvertieren.Verdoppeln(strNummer);// Methode :// Wir teilen die Zahl durch einen Teiler.// Wenn der Rest dieser Division 0 ist, haben wir kein te// mit einer Primzahl machen und sich den Teiler merken.// Wir führen dies für Teiler im Bereich von 2 bis halb aus// der Dividende.// wenn wir am Ende noch keinen Rest = 0 haben// gefunden, ist es eine Primzahlwährend(Divisor<=dblNummer/2){doppeltsich ausruhen=dblNummer%Divisor;wenn(sich ausruhen==0){Ahle=falsch;Teiler =System.Konvertieren.ToString(Divisor)", ";}Divisor;}wenn(Ahle){Etikett2.set_Visible(falsch);tag3.set_Visible(wahr);Etikett4.set_Visible(wahr);Teiler="Die Teiler sind 1,"strNummer;Etikett4.Text setzen(Teiler);}sonst{Etikett2.set_Visible(wahr);tag3.set_Visible(wahr);Etikett4.set_Visible(wahr);Teiler="Die Teiler sind 1,"TeilerstrNummer;Etikett4.Text setzen(Teiler);}}| .NET-Framework | ||||||||
|---|---|---|---|---|---|---|---|---|
|
| Programmiersprachen |
|---|
ABAP ·ABC ·ActionScript ·ada ·algol ·APL ·Assemblersprachen ·AWK ·B ·BASIC ·BCPL ·C ·C ·C♯ ·sauber ·Schermaschine ·COBOL ·COMAL ·Curry ·d ·Eiffel ·Erlang ·F♯ ·her ·fortran ·gehen ·Haskell ·Symbol ·J ·Java ·Kotlin ·lispeln ·Logo ·lua ·m4 ·ML ·Modula-2 ·Oberon ·Objekt Pascal ·Ziel c ·Ocamli ·Unze ·Pascal ·perl ·PHP ·PL/I ·PL/SQL ·Prolog ·Prova ·Python ·Rexx ·Rollenspiel ·Rubin ·Frieden ·SAS ·Reichweite ·planen ·Selbst ·Simula ·Smalltalk ·Schnell ·TCL ·Typoskript ·vala ·Visual Basic |