Java

From Lexikon (Strato)
Jump to: navigation, search

Java, objektorientierte Programmiersprache, die von der Firma Sun Microsystems mit den elementaren Entwicklungszielen "Generierung von robustem Code", "Plattformunabhängigkeit" und modularer objekt­orientierter Aufbau" entwickelt wurde. Java hat sich in sehr kurzer Zeit als dominante Programmiersprache für Internet/Intranet-Lösungen etabliert. Java kommt als J2SE (Java 2 Standard Edition) und als J2EE (Java 2 Enterprise Edition).

Einsatzfelder von Java sind jede Art von Anwendungen, die auf dem Client mit Intelligenz, Interaktion und schnellen Antwortzeiten laufen müssen. Der Netzverkehr wird beträchtlich entlastet. Java ist eine Cross-Plattform-Sprache.

Der compilierte Java-Code wird von einer Java Virtual Machine (JVM) ausgeführt, die auch eine umfangreiche Infrastruktur zur Verfügung stellt. Eine JVM kann unabhängig auf einem Computer laufen (sog. Java Application) oder auf dem Client als Bestandteil des Web-Browsers und/oder auf dem Server als Server-Erweiterung (typisch: Web-Server) zur Verfügung stehen.

Java-Programme, die von einer JVM innerhalb des Web-Browsers ausgeführt werden heissen Applets und verfügen auf Grund von Browser-Restriktionen nur über begrenzte Funktionalität. Java-Programme, die von einer JVM als Erweiterung eines Web-Servers ausgeführt werden heissen Servlets und verfügen über alle reichhaltigen Möglichkeiten der Java-Architektur, wie z.B. Zugriff auf Datenbanken, Netzwerk und Schnittstellen aller Art.

Der Java-Entwickler kann und muss nicht wissen, ob sein Code auf Windows, Linux, Unix, MacOS, OS/2 oder sonst wo ablaufen soll. Java Virtual Machines stellen die Ablaufumgebung auf allen Plattformen zur Verfügung. Damit wird Java zur Systemplattform für im Netz (z.B. Internet/Intranet) verteilte Anwendungen. Ganz gemäss dem Sun-Slogan "the network is the computer".

Wenn man von Java spricht, meint man eigentlich drei Dinge: 1. Die Programmiersprache Java 2. Die JVM mit Bytecode-Interpretation und JIT-Compiler 3. Eine Menge von Klassenbiblliotheken. Die Klassenbibliotheken realisieren Schnittstellen (APIs) und Dienste, die eine ganze Anwendungsplattform bereitstellen. Dazu gehören JDBC (Datenbank), JSP (Java Server Pages), JavaServlets, JNDI (Verzeichnisdienste), Corba, EJB (Enterprise Java Beans) u.v.a.m.

Siehe: API, Applet, Objektorientierung, Sun, Web-Browser, Client-Server-Architektur, Corba, EJB, JDBC, JavaServer Page, Servlet