Einführung in Java

Geschichte von Java

  • 1991: Entwicklung begann bei Sun Microsystems von James Gosling und seinem Team.
  • 1995: Erstveröffentlichung als "Java 1.0".
  • Ursprünglich für interaktive Fernsehapparate gedacht.
  • 1996: Offizielle Veröffentlichung von Java 1.0.
  • 2009: Sun Microsystems wurde von Oracle Corporation übernommen.
  • Heute weit verbreitet in mobilen Anwendungen, Webentwicklung und Unternehmenssoftware.

Der Name "Java"

  • Ursprünglich sollte die Sprache "Oak" heißen, benannt nach einer Eiche vor dem Büro von James Gosling.
  • Da der Name "Oak" bereits markenrechtlich geschützt war, musste ein neuer Name gefunden werden.
  • Das Team entschied sich für "Java", inspiriert von der beliebten Kaffeesorte Java, die von der indonesischen Insel Java stammt.
  • Der Name "Java" sollte die Energie, den Enthusiasmus und die Lebendigkeit widerspiegeln, die die Entwickler in die neue Programmiersprache einbrachten.

Eigenschaften von Java

  • Plattformunabhängig: "Write Once, Run Anywhere" (WORA) – Java-Programme können auf verschiedenen Plattformen ohne Modifikationen ausgeführt werden.
  • Objektorientiert: Java unterstützt die Prinzipien der Objektorientierung wie Vererbung, Polymorphismus und Kapselung.
  • Robust: Starke Speicherverwaltung, Fehlerprüfung zur Kompilierzeit und Laufzeit.
  • Sicher: Umfangreiche Sicherheitsfunktionen für den Schutz vor Bedrohungen und Angriffen.
  • Multithreading: Unterstützung für parallele Ausführung von Aufgaben.
  • Dynamisch: Laufzeitinformationen können genutzt werden, um Klassen zu laden und zu verwenden.

Java Runtime Environment (JRE)

  • Definition: Laufzeitumgebung, die notwendig ist, um Java-Anwendungen auszuführen.
  • Bestandteile:
    • Java Virtual Machine (JVM): Führt Java-Bytecode aus und macht Java plattformunabhängig.
    • Bibliotheken und Klassen: Notwendige APIs und Klassenbibliotheken für die Ausführung von Java-Programmen.
  • Funktion: Bietet die notwendigen Ressourcen und Bibliotheken, um Java-Anwendungen auszuführen, jedoch keine Entwicklungswerkzeuge.

Java Development Kit (JDK)

  • Definition: Entwicklungsumgebung für Java-Anwendungen.
  • Bestandteile:
    • JRE: Enthält alles, was im JRE enthalten ist.
    • Entwicklungswerkzeuge: Compiler (javac), Debugger, Dokumentationstool ( javadoc) und andere Werkzeuge für die Entwicklung von Java-Anwendungen.
  • Verwendung: Notwendig für die Entwicklung, Kompilierung und Debugging von Java-Programmen.
  • Versionen: Verschiedene Editionen wie Standard Edition (SE), Enterprise Edition (EE) und Micro Edition (ME) für unterschiedliche Anwendungsfälle.

Java Development Kit (JDK)

Installation

$ sudo apt update
[sudo] Passwort für XXX: 
OK:1 http://at.archive.ubuntu.com/ubuntu jammy InRelease
Holen:2 http://at.archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]                                                                                                                                                   
OK:3 https://updates.signal.org/desktop/apt xenial InRelease 
...
$ apt search openjdk|grep jdk
...
openjdk-21-jdk/jammy-updates,jammy-security,now 21.0.3+9-1ubuntu1~22.04.1 amd64  [installiert]
openjdk-21-jdk-headless/jammy-updates,jammy-security,now 21.0.3+9-1ubuntu1~22.04.1 amd64  [Installiert,automatisch]
openjdk-21-jre/jammy-updates,jammy-security,now 21.0.3+9-1ubuntu1~22.04.1 amd64  [Installiert,automatisch]
openjdk-21-jre-headless/jammy-updates,jammy-security,now 21.0.3+9-1ubuntu1~22.04.1 amd64  [Installiert,automatisch]
openjdk-21-jre-zero/jammy-updates,jammy-security 21.0.3+9-1ubuntu1~22.04.1 amd64
openjdk-21-source/jammy-updates,jammy-updates,jammy-security,jammy-security 21.0.3+9-1ubuntu1~22.04.1 all
openjdk-21-testsupport/jammy-updates,jammy-security 21.0.3+9-1ubuntu1~22.04.1 amd64
openjdk-8-dbg/jammy-updates,jammy-security 8u412-ga-1~22.04.1 amd64
...
$ sudo apt install openjdk-21-jdk
...
$ java -version
openjdk version "21.0.3" 2024-04-16
OpenJDK Runtime Environment (build 21.0.3+9-Ubuntu-1ubuntu122.04.1)
OpenJDK 64-Bit Server VM (build 21.0.3+9-Ubuntu-1ubuntu122.04.1, mixed mode, sharing)
$ javac -version
javac 21.0.3
$

Hinweis: im Computersaal ist vielleicht eine andere Version (niedriger) installiert. Diese wäre zu bevorzugen.

Zitat

"The only way to do great work is to love what you do." - Steve Jobs

02 Einführung in Java

By Harald Haberstroh

02 Einführung in Java

  • 134