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