J Sharp

Artikelns titel kan av tekniska skäl inte återges korrekt. Den korrekta titeln är J#.

J# (J Sharp) är ett transitionellt programspråk ämnat för att göra det lättare för Java- och J++-utvecklare att migrera till Microsofts .NET-plattform. Således tillåts program som redan är skrivna i till exempel Java att köras på Microsofts virtuella maskin, Common Language Runtime (CLR). J# utvecklades av Microsoft India Development Center i HITEC City, Indien.

Microsofts implementation släpptes under namnet Visual J#. Visual J# kommer med ett klassbibliotek liknande Javas.

Skillnader mellan J# och Java

J# och Java har till grunden samma syntax, men J# inkluderar ett antal förändringar som anpassar det för .NET Framework. J# behåller dock kompatibilitet med programspråket Java.

  • Egenskaper i Java fungerar inte som .NET-egenskaper (som i till exempel C#). En "Java-egenskap" är en metod som antingen föregås av prefixen set- eller get- (jämfört med getter och setter i .NET). I J# måste egenskaps-deklarationen dessutom ackompanjeras med en JavaDoc-liknande annotation:

/** @beanproperty */
void setValue(string Value)
{
   ...
}

/** @beanproperty */
string getValue()
{
   ...
}

  • J# kompileras inte till java bytekod (.class filer) utan till .NET assemblyn. Det betyder att programmen endast kan exekveras av Common Language Runtime. Man kan inte heller skriva Java applets och inte heller köra dem direkt i webbläsaren. Microsoft har dock släppt J# Browser Controls som är en wrapper som tillåter applikationerna att köras som ActiveX-kontroller inuti webbläsaren. Java Native Interface (JNI) har ersatts av P/Invoke.
  • J# stöjder .NET Framework men inte fullt ut. I J# kan man inte utnyttja allt som andra .NET-språk kan. Till exempel händelser, delegater, värdetyper och generiska typer. J# stödjer endast användning av generiska typer, men inte deklarering.

Framtid

J# kommer inte längre att stödjas av utvecklingsverktyget Microsoft Visual Studio (från och med version 2008). Microsoft har inga planer med att fortsätta utveckla programspråket då de satsar mer på C#.

Se även

  • Java (programspråk)
  • Visual J++
  • Microsoft Visual C#
  • .NET Framework

Referenser

  • Artikel på engelskspråkiga Wikipedia (Delvis)

Externa länkar

  • Visual J# Developer Center på MSDN
  • Tutorial hos FunctionX


v  r
.NET Framework
Arkitektur
Base Class Library · Common Language Runtime · Code Access Security · Assembly · Metadata · COM Interop
CLI
CLI-programspråk
C# · Visual Basic .NET · C++/CLI (Managed) · J# · JScript .NET