Java

Java

Copyright © Shutterstock/fatmawati achmad zaenuri

Was ist Java?

Java ist eine universelle Computerprogrammiersprache, die gleichzeitig, klassenbasiert, objektorientiert und speziell so konzipiert ist, dass sie so wenig Implementierungsabhängigkeiten wie möglich aufweist. Die Anwendungen werden normalerweise in Bytecode kompiliert, der unabhängig von der Computerarchitektur auf einer beliebigen Java Virtual Machine (JVM) ausgeführt werden kann. Seit 2016 ist es eine der beliebtesten Programmiersprachen, insbesondere für Client-Server-Web-Anwendungen. Diese Computerprogrammiersprache wurde ursprünglich von James Gosling bei Sun Microsystems entwickelt. Welche inzwischen von der Oracle Corporation übernommen wurden und 1995 als Kernkomponente der Plattform von Sun Microsystems veröffentlicht. Die Sprache leitet viel von ihrer Syntax aus C und C ++ ab. Sie hat aber weniger Möglichkeiten auf niedriger Ebene als beide.

Im Einklang mit den Spezifikationen des Java Community Process lizenzierte Sun im Mai 2007 die meisten Technologien unter der GNU General Public License. Andere haben auch alternative Implementierungen dieser Sun-Technologien entwickelt. Beispielsweise den GNU-Compiler (Bytecode-Compiler), GNU-Klassenpfad (Standardbibliotheken) und IcedTea-Web (Browser-Plugin für Applets). Die neueste Version ist Java 10, veröffentlicht am 20. März 2018. Java 8 wird weiterhin unterstützt, aber für 9 wird es keine Sicherheitsupdates mehr geben. Versionen vor 8 werden von Unternehmen auf kommerzieller Basis unterstützt. z.B. von Oracle zurück zu 6 ab Oktober 2017.

Was ist die Java-Plattform?

Ein Entwurfsziel der Sprache ist Portabilität. Das bedeutet, dass Programme, die für die Plattform geschrieben wurden, auf jeder Kombination von Hardware und Betriebssystem mit angemessener Laufzeitunterstützung ähnlich laufen müssen. Dies wird erreicht, indem der Sprachcode zu einer Zwischenrepräsentation, die als Java-Bytecode bezeichnet wird, kompiliert wird.und nicht direkt zu architekturspezifischem Maschinencode.

Die Bytecode-Anweisungen sind analog zu Maschinencodes, sie sollen jedoch von einer virtuellen Maschine (VM) ausgeführt werden, die speziell für die Host-Hardware geschrieben wurde. Endbenutzer verwenden häufig eine Java Runtime Environment (JRE), die auf ihrer eigenen Maschine für eigenständige Anwendungen oder in einem Webbrowser für Java-Applets installiert ist. Standardbibliotheken bieten eine allgemeine Möglichkeit, auf hostspezifische Funktionen wie Grafik, Threading und Netzwerk zuzugreifen.

Die Verwendung von universellem Bytecode macht die Portierung einfach. Der Aufwand beim Interpretieren von Bytecode in Maschinenbefehle macht jedoch interpretierte Programme fast immer langsamer als native ausführbare Programme. Just-in-Time (JIT) -Compiler, die während der Laufzeit Bytecodes zur Maschinencodierung kompilieren, wurden von Anfang an eingeführt. Die Computerprogrammiersprache selbst ist plattformunabhängig und an die jeweilige Plattform angepasst, auf der es von einer Virtual Machine ausgeführt wird, die den Bytecode in die Maschinensprache der Plattform übersetzt.

Wie ist der Jave Aufbau?

Die am häufigsten verwendeten Klassen Objekt und String erscheinen in der Mitte des Diagramms. Die Syntax wird weitgehend von C ++ beeinflusst. Im Gegensatz zu C ++, das die Syntax für strukturierte, generische und objektorientierte Programmierung kombiniert, wurde diese Programmiersprache fast ausschließlich als objektorientierte Sprache entwickelt. Der gesamte Code ist innerhalb von Klassen geschrieben, und jedes Datenelement ist ein Objekt, mit Ausnahme der primitiven Datentypen (d. H. Ganzzahlen, Fließkommazahlen, boolesche Werte und Zeichen), die aus Gründen der Leistung keine Objekte sind.

Wie funktioniert die automatische Speicherverwaltung?

Java verwendet einen automatischen Speicherbereiniger, um Speicher im Objektlebenszyklus zu verwalten. Der Programmierer bestimmt, wann Objekte erstellt werden, und die Laufzeit der Programmiersprache ist für die Wiederherstellung des Speichers verantwortlich, sobald Objekte nicht mehr verwendet werden. Sobald keine Verweise auf ein Objekt mehr vorhanden sind, kann der nicht erreichbare Speicher somit automatisch vom Garbage Collector freigegeben werden. Etwas Ähnliches wie ein Speicherleck kann immer noch auftreten, wenn der Code eines Programmierers einen Verweis auf ein Objekt enthält, das nicht mehr benötigt wird, typischerweise wenn Objekte, die nicht länger benötigt werden, in Containern gespeichert werden, die noch verwendet werden. Wenn Methoden für ein nicht vorhandenes Objekt aufgerufen werden, wird eine ,,Nullzeigerausnahme” ausgelöst.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte