J-Sharp

J#
Paradigmen:Objektorientierte Programmiersprache
Erscheinungsjahr:2002
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++-Programmiern den Um- bzw. Einstieg in die .NET-Umgebung erleichtern sollte. Langfristig sollten sich Java-Entwickler 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 Java-Entwickler bestehenden Java-Code 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 erklärte zum 10. Januar 2007, dass J# nicht mehr weiterentwickelt und es auch keine neue Version in Visual Studio 2008 hierfür geben werde. Visual Studio 2005 war somit die letzte Version die J# enthielt.[1] Bis 2015 gab es eine eingeschränkte Produktunterstützung, die sich auf Fehlerbehebungen beschränkte.

Unterschiede zwischen J# und Java

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

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

  • Liste der .NET-Sprachen

Einzelnachweise

  1. Microsoft MSDN: J# wurde aus Visual Studio 2008 entfernt

Auf dieser Seite verwendete Medien