kramann.info
© Guido Kramann

Login: Passwort:










5.2 Die Programmiersprache Java

Java-Anwendungen

  • Java ist weder eine Skriptsprache, noch eine Kompilersprache.
  • Der Quellcode wird in einen Maschinencode für einen virtuellen Rechner übersetzt, den so genannten Bytecode und dann auf diesem virtuellen Rechner ablaufen gelassen.
  • Wie ist das zu verstehen?
  • Ziel ist es, einen Java-Quellcode nur einmal übersetzen zu müssen, um ihn dann auf jedem Rechnertyp und unter jedem Betriebssystem ablaufen lassen zu können.
  • Wenn alle Rechner die gleiche Hardware-Architektur und das gleiche Betriebssystem hätten, wäre das leicht möglich.
  • Da dies aber nicht der Fall ist, wird ein Trick angewendet:
  • Zwischen Hardware-Architektur und Java-Bytecode wird eine Schicht, ein virtueller Rechner, eingefügt, die die jeweilige Hardware-Architektur vor dem Bytecode verbirgt und eine immer gleiche Hardwarearchitektur simuliert.
  • D.h. der virtuelle Rechner interpretiert den Bytecode.
  • Da dies sehr viel Hardware näher geschieht, als wenn Quelltext direkt interpretiert wird, is Java wesentlich schneller, als eine normal interpretierte Skriptsprache, jedoch immer noch einiges langsamer, als kompilierte C-Programme.
  • Leider muß man natürlich bevor Java irgendwo läuft, auf dem betreffenden Rechner die Virtual Machine installieren und jede Rechnerarchitektur und jedes Betriebssystem benötigt eine andere VM.
  • Dies muß aber nur ein einziges mal geschehen.
  • Danach läuft dort jeder Java-Bytecode.
  • Ursprünglich sollte dieses Prinzip eingesetzt werden, um immer gleichbleibende Programme für unterschiedliche eingebettete Systeme einsetzen zu können, wie sie in Handys, Haushaltsgeräten usw. auftreten. Zu dem Zeitpunkt hieß die Sprache noch "Duke".
  • Dann erkannte man, dass dieses Prinzip des virtuellen Rechners sich auch sehr gut beim Einsatz im Internet eignet:

Java-Applets

  • Java-Applets sind kleine Programme, deren Bytecode über das Internet an einen Clientrechner geschickt werden und die dann von der dortigen Java-Virtual-Machine interpretiert werden.
  • Gegenüber Server seitigen Formularen hat diese Technik den Vorteil, dass die Resourcen des Client-Rechners stärker genutzt werden.
  • Insbesondere bei grafischen Darstellungen, Vorabprüfung von Eingabefeldern usw. ist der Einsatz dieser Technik sehr sinnvoll.
  • Gegenüber fest installierten Programmen, haben Applets den Vorteil, dass der Zeitaufwand der Installation gespart wird, das Programm jederzeit auf dem Server geändert werden kann und es auf den meisten Rechnern ohne Probleme läuft.
  • In den folgenden Unterkapiteln finden sich Javabeispiele für ein Hello world-Programm, ein weiteres, an dem man sieht, wie Objekte erzeugt werden und ein Applet.
Beispiele aus den Unterkapiteln gezipt (javabeispiele.zip).