J-Sharp

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Icon falscher Titel.svg Der korrekte Titel dieses Artikels lautet „J#“. Diese Schreibweise ist aufgrund technischer Einschränkungen nicht möglich.
J#
Paradigmen: Objektorientierte Programmiersprache
Entwickler: Microsoft
Aktuelle Version: 2.0  (22. Januar 2006)
Beeinflusst von: Java
Betriebssystem: Windows
MSDN.Microsoft.com

J# ist eine von Microsoft entwickelte objektorientierte Programmiersprache, die Java- und Visual J++-Programmierern den Um- bzw. Einstieg in die .NET-Umgebung erleichtern sollte. Langfristig sollten Javaentwickler sich mit dem Framework näher vertraut machen, um später in C# alle Funktionen von .NET nutzen zu können. Auch diente J# eher dazu, dass Javaentwickler bestehenden Javacode leichter in die Umgebung mitnehmen konnten, um ihn in neuen Projekten unter einer anderen .NET Sprache wie C# oder VB.NET weiter zu nutzen.

Microsoft hat zum 10. Januar 2007 erklärt, dass J# nicht mehr weiterentwickelt und es auch keine neue Version von Visual Studio hierfür geben wird. Bis 2015 geht die normale Produktunterstützung weiter, welche sich jedoch auf Fehlerbereinigungen beschränkt.

Unterschiede zwischen J# und Java[Bearbeiten]

Beide Sprachen besitzen zwar dieselbe "Grundsyntax", setzen dennoch auf unterschiedliche Laufzeitumgebungen. J# wird unter CLR (Common Language Runtime) eingesetzt, während Java die JRE (Java Runtime Environment) von Oracle oder eine ähnliche Umgebung nutzt.

In Visual Studio 2005 stellt Microsoft eine Vielzahl von aus der Java-Welt übernommenen Namensräumen und Klassen bereit, die es einem Java-Programmierer erleichtern sollen, mit .NET zu arbeiten. Insbesondere Wert gelegt wurde auf die Konvertierung der Standard- und Swing-Klassen. Zudem existiert dort ein Compiler, welcher J#-Quelltexte in C#-Code übersetzt.

Programmierbeispiel[Bearbeiten]

Die folgenden Zeilen geben einen kleinen Einblick in den Aufbau und die Verwendung von J#:

import System.Console;
import System.Windows.Forms.*;
 
public final class Program extends Object
{
    public final static String HalloWeltAusdruck = "Hallo, Welt!";
 
    /**
     * Einstiegspunkt
     */
    public static void main(String[] args)
    {
        (new Program()).Run(args);
    }
 
    /**
     * "Hallo, Welt!" Ausgabe an Standardausgabe (meistens Konsole)
     */
    private void DefOutput()
    {
        System.Console.WriteLine("Ausgabe an Konsole...\n");
 
        Console.get_Out().WriteLine(HalloWeltAusdruck);
 
        System.Console.WriteLine("ENTER betätigen, um fortzufahren...\n");
        Console.ReadLine();
    }
 
    /**
     * Eine Art nicht-statischer Einstiegspunkt
     */
    private void Run(System.String[] args)
    {
        // Ausgabe => Konsole
        this.DefOutput();
 
        // Ausgabe an Windows
        WinOutput();
    }
 
    /**
     * "Hallo, Welt!" Ausgabe als Windows-Fenster
     */
    private void WinOutput()
    {
        System.Console.WriteLine("Ausgabe als Windows-Fenster...");
 
        MessageBox.Show(Program.HalloWeltAusdruck, "Ausgabe als Windows MessageBox.");
 
        System.Console.WriteLine("ENTER betätigen, um fortzufahren...\n");
        Console.ReadLine();
    }
}

Siehe auch[Bearbeiten]