Java (Programmiersprache)

Java ist der Name einer Programmiersprache, die von Sun Microsystems entwickelt wurde. Dieses Unternehmen wurde von der Oracle Corporation aufgekauft, die es weiterhin auf dem neuesten Stand hält. Die neueste Version ist Java 14, veröffentlicht im März 2020. Darüber hinaus werden nur folgende Versionen unterstützt: die neueste Long Term Support (LTS)-Version Java 11, veröffentlicht am 25. September 2018; und Oracle hat für das "Legacy" Java 8 LTS das letzte kostenlose "öffentliche Update" veröffentlicht. Die nächste geplante LTS-Version ist Java 17 (LTS), die für September 2021 geplant ist.

Java, das zu einer Zeit, als es noch in der Entwicklung war, Oak genannt wurde, ist objektorientiert, d.h. es basiert auf Objekten, die zusammenarbeiten, damit Programme ihre Arbeit tun können. Java-Code sieht aus wie C, C++ oder C#, aber Code, der in diesen Sprachen geschrieben wurde, wird in den meisten Fällen nicht ohne Änderungen in Java funktionieren.

Java läuft auf vielen verschiedenen Betriebssystemen, einschließlich Android, dem weltweit beliebtesten mobilen Betriebssystem (während Java weiterhin auf Android verwendet wird, sogar von seinem Hersteller Google, bevorzugen sie Java nicht mehr; jetzt ist Kotlin ihre bevorzugte Sprache, die auch mit dem gesamten Java-Code verwendet werden kann). Dies macht Java plattformunabhängig. Dies wird dadurch erreicht, dass der Java-Compiler den Code in Java-Bytecode statt in Maschinencode umwandelt. Dies bedeutet, dass bei der Ausführung des Programms die Java Virtual Machine den Bytecode interpretiert und in Maschinencode übersetzt.

Java-Konzepte

Java wurde entwickelt, um fünf Hauptziele zu erreichen. Diese sind:

  • Java sollte leicht zu erlernen, objektorientiert und verteilbar sein.
  • Java sollte sicher und stark sein.
  • Java sollte nicht von irgendeiner Computerarchitektur oder Plattform abhängig sein.
  • Java sollte gut funktionieren.
  • Java sollte in der Lage sein, einen Interpreter dafür schreiben zu lassen, Parallelität zu unterstützen und dynamische Typisierung zu verwenden.

 

Java-Plattform

Die Java-Plattform bezieht sich auf eine Gruppe von Softwareprodukten von Sun Microsystems. Die Plattform wird zur Entwicklung und Ausführung von Java-Programmen verwendet. Die Plattform umfasst die Ausführungsmaschine (genannt Java Virtual Machine), die es Java-Programmen ermöglicht, auf verschiedenen Computersystemen dasselbe zu tun.

Diese Fähigkeit, Software auf einer Plattform entwickeln und auf anderen Plattformen ausführen zu können, wird als "plattformübergreifende Fähigkeit" bezeichnet.

Java-Programmbeispiel

Ein Beispiel für ein "Hello World"-Java-Programm:

/** * Dies ist ein einfaches Programm in Java.   * Es zeigt "Hello World!" auf dem Bildschirm an.   */ Klasse HelloWorld { public static void main(String[] args) { System. out. println("Hello World!");       } }

Arten von Java-Programmen

Es gibt viele Arten von Java-Programmen, die unterschiedlich ablaufen:

  • Java-Applet - kleines in Java geschriebenes Programm, das von einer Website heruntergeladen und in einem Webbrowser auf einem Client-Computer ausgeführt wird.
  • Anwendung - wird auf einem Client-Computer ausgeführt. Wenn sie online ist, muss sie vor der Ausführung heruntergeladen werden.
  • JAR-Datei (Java-Archiv) - wird verwendet, um Java-Dateien zu einer einzigen Datei zusammenzufassen (fast genau wie eine .zip-Datei).
  • Servlet - läuft auf einem Webserver und hilft bei der Generierung von Webseiten.
  • Swing-Anwendung - wird verwendet, um eine Anwendung zu erstellen, die über eine GUI verfügt (Fenster, Schaltflächen, Menüs usw.).
  • EJB - läuft auf einem Webserver und wird zur Entwicklung großer, komplexer Websites verwendet.

Vorteile

Java wird häufig verwendet, um Studenten zu lehren, wie man als erste Sprache programmiert, wird aber immer noch auch von Fachleuten verwendet.

  • Java erfordert, dass jede Variable initialisiert wird. Einige ältere Sprachen, wie z.B. C, erlauben es, dass Variablen nicht initialisiert werden, was zu zufälligen Fehlern mit mysteriösen Fehlern führen kann.
  • Java erfordert, dass jede Methode einen Rückgabetyp deklariert - die Methode sollte immer einen Wert zurückgeben, außer wenn ihr Rückgabetyp ungültig ist. Dies verhindert auch Fehler.
  • Java kommt mit einem großen Satz von Klassen und Methoden, der Java-API, die verwendet werden kann, ohne so viel Code "von Grund auf" entwickeln zu müssen.
  • Im Gegensatz zu C sind die primitiven Java-Typen, wie z.B. int, in der Anzahl der Bits immer gleich groß, was zu plattformübergreifender Kompatibilität beiträgt.
  • Früher dachte man, Java sei langsamer als C, aber das hat in den letzten Jahren an Bedeutung verloren, weil Computer schneller sind.
  • Java verfügt über eine Ausnahmebehandlung, die einen Programmierer erfordert, um Fehlerbedingungen wie Ein-/Ausgabefehler zu behandeln.
  • Code, der auf einer Java-Plattform kompiliert wurde, kann auf anderen Plattformen, die Java unterstützen, ohne Änderung des Quellcodes oder des Byte-Codes ausgeführt werden. Das bedeutet, dass eine Person ein Java-Programm für einen Windows-Computer erstellen und es auf einem Linux-Computer oder einem Mac-Computer ausführen lassen kann.

Kritik

Auch Java ist kritisiert worden. Einige der Kritikpunkte sind:

  • Generics wurden so zu Java hinzugefügt, dass vorhandener Code weiterhin lauffähig bleibt. Dies geschah mittels Typ-Löschung. Das bedeutet, dass während der Kompilierung der eigentliche Typ eines generischen Arguments entfernt wird. Dies kann dazu führen, dass sich der Java-Interpreter manchmal auf unerwartete Weise verhält.
  • Java hat keine vorzeichenlosen Integer-Typen, die von Sprachen wie C stark genutzt werden. Dies bedeutet auch, dass es unmöglich ist, numerische Daten direkt zwischen C- und Java-Programmen auszutauschen. Auch die Kryptographie ist bis zu einem gewissen Grad auf solche Typen angewiesen; dies erschwert es, Anwendungen zu schreiben, die Kryptographie in Java verwenden.
  • Die IEEE hat einen Standard für Fließkomma-Arithmetik definiert, IEE 754. Java unterstützt nur einen Teil der Funktionen dieses Standards.

Fragen und Antworten

F: Wie heißt die Programmiersprache, die von Sun Microsystems entwickelt wurde?


A: Die Programmiersprache, die von Sun Microsystems entwickelt wurde, heißt Java.

F: Wer unterstützt Java und hält es auf dem neuesten Stand?


A: Die Oracle Corporation unterstützt derzeit Java und hält es auf dem neuesten Stand.

F: Welches sind die aktuellen Long-Term-Support-Versionen (LTS) von Java?


A: Die aktuellen Long-Term-Support-Versionen (LTS) von Java sind Version 17, 11 und 8.

F: Wann wurde die neueste Version von Java veröffentlicht?


A: Die neueste Version von Java, Version 19, wurde im September 2022 veröffentlicht.

F: Gibt es neben Oracle noch ein anderes Unternehmen, das Java unterstützt?


A: Ja, Eclipse Adoptium unterstützt Java ebenfalls bis mindestens Mai 2026 für Version 8 und bis mindestens September 2027 für Version 17.

F: Welche Art von Code wird in Java verwendet?


A: Java verwendet objektorientierten Code, d.h. er basiert auf Objekten, die zusammenarbeiten, damit Programme ihre Aufgaben erfüllen können. Er sieht ähnlich aus wie C, C++ oder C#, aber Code, der in diesen Sprachen geschrieben wurde, wird in den meisten Fällen nicht funktionieren, ohne dass er geändert wird.

F: Wie macht sich Java selbst plattformunabhängig?


A: Java macht sich selbst plattformunabhängig, indem der Compiler den Code in ein spezielles Format namens Bytecode statt in Maschinencode umwandelt. Das bedeutet, dass der Bytecode bei der Ausführung des Programms von einem speziellen Programm namens virtuelle Maschine interpretiert werden kann, das ihn in Maschinencode übersetzt, so dass er auf verschiedenen Betriebssystemen wie Android ausgeführt werden kann.

AlegsaOnline.com - 2020 / 2023 - License CC3