Java besteht aus mehreren Komponenten:
- zunächst einmal ist Java eine Programmiersprache. So wie Assembler, C, C++, Pascal, Python... Das besondere an Java ist, dass der Quellcode nicht in ein Prozessor- und Betriebssystemspezifisches Programm umgewandelt (compiliert) wird, sondern in einen Code, der völlig unabhängig davon ist (also praktisch für einen imaginären Prozessor und ein imaginäres System). Daher ist ein compiliertes Java-Programm alleine auf einem Computer auch noch nicht ausführbar.
- zusätzlich gibt es noch die Java VM (Virtual Machine) , die dann diese compilierten Programme interpretieren und ausführen kann. Diese VM muss für jeden Prozessor und System jeweils angepasst sein.
Was soll das?
Wenn ein Programmierer sich dafür entscheidet ein Programm in Java zu schreiben, dann ist es automatisch, sofern er keine Fehler macht, auf allen Prozessoren und Betriebssystemen lauffähig, wenn dort die Java VM installiert ist. Du merkst da nix großartiges von. Du startest einfach das Programm wie gewohnt und im Hintergrund läuft eigentlich die Java VM und führt den Java-Code aus. Manchmal fällt das etwas auf, weil die Dialog-Elemente etwas anders als unter OS X gewohnt aussehen.
Wo wird das eingesetzt?
Es gibt eben zwei mögliche Einsatzzwecke:
- im Browser. Es gibt Java-Applets, die in einer Website eingebettet sein können so wie Flash. Der Einsatz im normalen Web nimmt immer mehr ab, weil es auch weit verbreitete Betriebssysteme gibt, bei denen Java nicht vorinstalliert ist. JavaScript hat ausser 4 Buchstaben nichts(!) mit Java zu tun.
- als eigenständiges Programm. Das kommt häufiger vor. Gerade auch bei systemübergreifenden Programmen. Mir fallen da jetzt auf Anhieb JBidWatcher, TVBrowser oder NeoOffice ein.