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