' Java-Lexikon
UNGLAUBLICH!de
.

Java-Lexikon

TEIA AG Online-Lexika Das kleine Lexikon zum Thema Java stammt aus dem kostenlosen Online-Kurs Java der TEIA AG - Internet Akademie und Lehrbuch Verlag. Mehr Infos dazu und zu 50 weiteren kostenlosen Online-Kursen finden Sie hier.

Glossar

Abstrakte Klasse

Eine Klasse, die mit dem Schlüsselwort abstract versehen ist , ist eine abstrakte Klasse. Abstrakte Klassen können nicht instanziert werden. Besitzt eine Klasse eine abstrakte Methode, muss sie als abstrakt deklariert werden.

Abstrakte Methode

Bei der Definition einer Methode kann der Anweisungsblock weggelassen werden. Die Methode muss dann mit dem Schlüsselwort abstract als abstrakte Methode gekennzeichnet werden.

Accessibility

Mit Accessibility wird ein Paket innerhalb des Standard-JDK bereitgestellt, das die Anpassung von Benutzerschnittstellen für Benutzer mit eingeschränkten Interaktionsfähigkeiten oder Behinderungen erlaubt.

Adapter

Adapter enthalten eine leere Implementierung für alle Methoden der entsprechenden Schnittstelle.

Anonyme Klasse

Bei der Verwendung Anonymer Klassen werden Klassen an ein und derselben Stelle deklariert und instanziert.

Anwendungsbereich

Bei der Einteilung der Programmiersprachen nach Anwendungsbereich wird untersucht, für welchen Zweck eine Programmiersprachen eingesetzt wird.

Applet

Ein Applet ist eine Java-Klasse, die in eine HTML-Seite eingebettet ist und von einem Web-Browser heruntergeladen und ausgeführt werden kann. Ein Applet ist eine spezielle Art eines Java-Containers.

Appletviewer

Der Appletviewer ist eine Java-Applikation, die es erlaubt, Applets ohne Brower zum Laufen zu bringen und ähnelt einem minimalen Browser.

Argumentenliste

Die Argumentenliste einer Methode oder eines Konstruktors gibt an wie viele Parameter eines bestimmten Typs beim Aufruf übergeben werden müssen.

Arithmetische Operatoren

Zu den arithmetischen Operatoren gehören Addition (+), Subtraktion (-), Multiplikation (*) und Division (/).

Array

Objekt, das zur Speicherung von Variablen gleichen Typs dient.
Syntax:
<modifier><typ>[]<name> = new <typ> [<länge>];

Assoziation

Bei einer Assoziation arbeiten 2 unabhängige Objekte zusammen, um ein gemeinsames Ziel zu erreichen. Ist dieses Ziel erreicht, können sie unabhängig voneinander fortbestehen.

AWT (Abstract Windowing Toolkit)

Das AWT ist eine Klassenbibliothek zur Entwicklung von grafischen Benutzerschnittstellen (GUIs), die seit der ersten Java-Version mit dem JDK ausgeliefert wird und ab dem JDK1.2 in die JFC integriert ist.

Boolean

Der Datentyp boolean ist ein Wahrheitswert. Der Wertebereich besteht nur aus den Werten wahr und falsch (true/ false), es sind keine anderen Werte möglich.

BorderLayout

Beim Layout-Manager BorderLayout werden die Komponenten entsprechend den Himmelsrichtungen angeordnet.

Button

Der Button repräsentiert einen Druckknopf mit Beschriftung.

CardLayout

Mit dem CardLayout wird ein Layout vergleichbar mit Karteikarten realisiert. Man kann mehrere, mit einem "key"-Objekt assoziierte Panels hinzufügen, von denen immer nur eines sichtbar ist. Die Panels können dann sequentiell durchgeblättert oder mit dem "key" selektiert werden.

Casting von Referenzen

Der Typ einer Referenz kann durch Casting geändert werden. Der neue Typ muss mit dem Typ des referenzierten Objekts kompatibel sein.

char

Der char-Typ hat eine Länge von 2 Byte, also 16 Bit. Der Wertebereich umfasst damit alle 65.536 Unicodezeichen.

Checkbox

Die Checkbox-Komponente bietet eine einfache "An/Aus"-Eingabemöglichkeit mit einem Textlabel. Zur Erstellung wird die Klasse Checkbox verwendet.

Checked Exception

Eine Checked Exception ist eine Exception, die nicht von RuntimeExeption erbt. Methoden, die eine Checked Exception werfen, müssen dies durch eine throws-Klausel bekannt geben.

Choice

Die Choice-Komponente repräsentiert ein Auswahlfeld mit der Möglichkeit, die Auswahl über eine Texteingabe oder über ein Menü zu treffen.

Component

Die Klasse Component ist die Basisklasse für alle GUI-Komponenten des AWT und definiert damit die Methoden, die alle Komponenten zur Verfügung stellen.

Container

Ein Container ist ein Behälter für Komponenten, der diese logisch zusammenfasst und das Layout bei der Darstellung festlegt. Jeder Container hat dafür einen eigenen Layout-Manager.

Datentypen

Datentypen sind eine Form der Spezifizierung von Variablen.

Default-Konstruktor

Wird kein Konstruktor explizit definiert, so fügt das System den Default-Konstruktor ein. Seine Argumentenliste und sein Anweisungsblock ist leer. Sobald ein Konstruktor definiert ist, wird kein Default-Konstruktor mehr eingefügt.

Delegation Modell

Im JDK1.1 kommt für die Ereignisbehandlung das sogenannte "Delegation-Modell" zur Anwendung. Bei diesem Modell wird ein Ereignis ebenfalls zuerst der Quellkomponente zugestellt, jedoch nur weitergereicht, wenn für dieses Ereignis Interessenten (sog. Listener) registriert sind.

Dialog

Dialog ist ein Fenster, das einem Frame untergeordnet ist und einem Benutzer Informationen oder Interaktionsmöglichkeiten bietet. Ein Dialog kann im Unterschied zum Frame mit Hilfe der Methode setModal() oder bereits im Konstruktor modal gesetzt werden. Er besitzt keine Resize-Corners und keine Menüleiste.

Drag & Drop

"Drag & Drop" schafft die Möglichkeit, Daten durch Ziehen und Fallenlassen beispielsweise per Maus zu verschieben.

Ereignisbehandlung

Zur Ereignisbehandlung in Java gibt es 2 unterschiedliche Modelle. Das hierarchische Modell (JDK1.0) und das Delegation-Modell(ab JDK1.1). Derzeit werden noch beide Modelle unterstützt, sind aber nicht kompatibel.

EventListener

Der EventListener ist ein Objekt einer Klasse, die das passende Interface zu einem Event implementiert. Ausschlaggebend ist dabei der Eventtyp. Für jeden Eventtyp existiert eine entsprechende Schnittstelle, die von der Listener- oder Handler-Klasse implementiert werden muss. Dabei kann die implementierende Klasse eine neue Handler-Klasse sein oder auch die Klasse, in der auch die GUI-Komponenten erstellt werden.

Event-Source

Die Event-Source ist der Generator eines Events. Klickt zum Beispiel ein Benutzer auf den Button "OK", so erzeugt dieser ein ActionEvent. Dieses wird an einen sog. EventHandler bzw. ActionListener weitergereicht.

Exception

Eine Exception ist ein Objekt, das zur Laufzeit vom System als Reaktion auf eine Ausnahme generiert wird. Exceptions können von einer Applikation gefangen werden. Damit wird die Applikation nicht beendet.

Fangen einer Exception

Ist bekannt, dass eine Anweisung eine Exception generiert ("wirft"), kann die Anweisung in einen try-Block gesetzt werden. Ein im folgenden definierter catch-Block fängt die Exception, wenn der Typ der angegebenen Exception zum Typ der geworfenen Exception passt.

FlowLayout

Der Layout-Manager FlowLayout ordnet die Komponenten in einem Container entsprechend der Breite des Darstellungsbereiches fließend hintereinander an.

Frame

Ein Frame ist ein eigenständiges Fenster (=Toplevel-Window) mit Rahmen und Titel, das in der Containment-Hierarchie an oberster Stelle liegt. Der Default-Layout-Manager des Frames ist Border-Layout. Der Frame kann durch den Benutzer in der Größe angepasst werden.

Funktionenbasierte Programmiersprachen

Funktionenbasierte Programmiersprachen werden auch prozedurale Programmiersprachen genannt. Zu lösende Probleme werden in Teilprobleme aufgeteilt - auch Funktionen (C) bzw. Prozeduren (Modula, PASCAL) genannt. Diese Unterprogramme werden während des Ablaufs des Hauptprogramms aufgerufen und nach ihrem Ablauf, wird das Hauptprogramm an der Stelle des Unterprogramm-Aufrufes fortgesetzt.

Garbage-Collection

Im Gegensatz zu ANSI C/C++ muss sich der Entwickler nicht mehr um das manuelle Bereitstellen und Freigeben von Speicherplatz kümmern. Objekte, die im Laufe eines Programms von keiner Variablen mehr referenziert werden, sind überflüssig. In Java werden solche Objekte automatisch von der so genannten Garbage Collection (kurz GC) gelöscht. Dieser Mechanismus hilft Speicher zu sparen und löst Probleme, da z. B. in C/C++ die Freigabe von schon freigegebenem Speicher zu einem Absturz führt.

GridBagLayout

Der GridBagLayout-Manager ist der leistungsfähigste Layout-Manger des AWT. Das Grundprinzip ist dasselbe wie beim GridLayout. Darüber hinaus gibt es aber noch sehr viel mehr Einstellungsmöglichkeiten

GridLayout

Der Layout-Manager GridLayout definiert auf dem Container ein Gitternetz mit Zellen derselben Größe, wobei die Anzahl der Zeilen und Spalten des Gitternetzes spezifizierbar ist. Die Komponenten werden zeilenweise sequentiell eingefügt und füllen ihre Zelle vollständig aus.

Hierarchisches Modell

Beim JDK1.0 wird ein Ereignis zunächst der Quellkomponente zugestellt, falls diese jedoch das Ereignis nicht behandelt, die "Containment"-Hierarchie nach oben durchgereicht.

if-Anweisung

Die if-Anweisung verwendet einen boolschen Ausdruck, um zu entscheiden, ob eine Anweisung oder mehrere Anweisungen ausgeführt werden sollen.

Imperative Programmiersprachen

Imperative Programmiersprachen bestehen aus einer linearen Listen von Programmbefehlen. Sie werden deshalb auch oft Befehlsfolgen-Sprachen genannt. Mit Sprungziel-Anweisungen können diese Programmiersprachen Programmteile überspringen oder wiederholen. Beispiele sind frühe BASIC-Versionen, Cobol oder Assembler.

Instanzvariable

Attribut, Eigenschaft einer Klasse. Wird innerhalb einer Klasse definiert und zur Laufzeit angelegt, wenn eine Instanz der definierenden Klasse erzeugt wird. Eine Instanzvariable kann in jedem Objekt, das aus der gleichen Klasse erzeugt wurde, einen anderen Wert annehmen.
Syntax: [<modifier>] <typ> <name>;

Interface

Ein Interface ist eine Sammlung von abstrakten Methoden und wird über das Schlüsselwort interface definiert. Eine Klasse kann mehrere Interfaces durch das Schlüsselwort implements implementieren. Dadurch erbt die Klasse die abstrakten Methoden der Interfaces und muss diese überschreiben.

jar-Archiv

Das Tool jar des JDKs ermöglicht eine Komprimierung und Archivierung der von einer Applikation benötigten Ressourcen in einer Datei. Dadurch wird die Auslieferung fertiger Klassen erleichtert.
Verwendet man fremde Klassen, die als jar-Archiv zur Verfügung stehen, kann der Inhalt des Archivs durch das Tool jar aufgelistet und extrahiert werden.

Java2D

Java2D entstand aus einer Zusammenarbeit von Sun und Adobe zur Definition eines mächtigen Frameworks für Bildverarbeitung und Grafik. Dieses Paket enthält z.B. geräte- und auflösungsunabhängige Funktionen für zweidimensionale Text-, Grafik- und Bilddarstellung.

JavaScript

Die Namen suggerieren zwar Ähnlichkeiten, diese beziehen sich aber lediglich auf die Syntax. Die Programmiersprache JavaScript wurde speziell in der Frühzeit der Webprogrammierung von Netscape entwickelt um statische Webseiten durch interaktive Inhalte aufzuwerten. JavaScript wird direkt in ein HTML-Dokument zwischen spezielle HTML-Tags geschrieben.

JFC (Java Foundation Classes)

Die JFC sind ein Gemeinschaftsprojekt von Sun, Netscape, IBM und Apple zur Erweiterung des Standard-JDK im Hinblick auf die Entwicklung von Benutzerschnittstellen in Java.

KeyEvent

Dieses Event wird immer dann verwendet, wenn eine Taste der Tastatur gedrückt, losgelassen oder geklickt wird.

KeyListener

Ein KeyListener kann mit Hilfe der Methode addKeyListener(KeyListener l) bei einer Komponente registriert werden. Somit wird er benachrichtigt, wenn ein KeyEvent auftritt. Die dem Event entsprechende Handler-Methode wird aufgerufen.

Klasse

Abstrakte Beschreibung eines Objektes, bestehend aus Attributen, Methoden und Konstruktoren. Aus einer Klasse können beliebig viele Objekte erzeugt werden.

Klassenmethode

Methode, die in einer Klasse definiert und mit dem Schlüsselwort static versehen wird. Eine Klassenmethode wird im Speicher angelegt, wenn zur Laufzeit die Klasse geladen wird. Sie kann über den Klassennamen angesprochen werden.
Eine Klassenmethode kann im Anweisungsblock nur auf die Klassenvariablen der gleichen Klasse zugreifen, nicht auf die Instanzvariablen.

Klassenvariable

Variable, die in einer Klasse definiert und mit dem Schlüsselwort static versehen wird. Eine Klassenvariable wird im Speicher angelegt, wenn zur Laufzeit die Klasse geladen wird. Sie kann über den Klassennamen angesprochen werden. Eine Klassenvariable ist eng mit der Klasse verknüpft und nicht mit einer konkreten Instanz der Klasse. Damit hat die Klassenvariable in allen Objekten den gleichen Wert und die gleiche Repräsentation.

Komposition

Bei einer Komposition enthält ein Objekt ein anderes. Das enthaltene Objekt kann nicht selbständig existieren.

Konstruktor

Ein Konstruktor wird ausgeführt, wenn im Zusammenhang mit dem Operator new eine neue Instanz der Klasse generiert werden soll. Seine Aufgabe ist es, dem neuen Objekt einen Anfangszustand zu geben, d.h. v.a. Instanzvariablen mit bestimmten Werten zu belegen.
Syntax:
[<modifier>]<klassenname>([<argumentenliste>]) {Anweisungen}

Label

Das Label repräsentiert einen einzeiligen, statischen Text zur Beschriftung anderer Komponenten.

Layout-Manager

Ein Layout-Manager dient einem Container zur Aufteilung dessen grafischen Zeichenbereichs, d.h. er legt die Position und Größe aller Komponenten innerhalb des Containers bei der Darstellung fest.

Lebenszeit

Die Zeit zwischen dem Anlegen und dem Zerstören eines Objektes wird Lebenszeit des Objektes genannt.

List

Eine Liste zeigt verschiedene Text-Optionen in einem bestimmten Bereich gleichzeitig an. Falls mehr Items enthalten sind als angezeigt werden können, erscheinen automatisch Scrollbalken.

Logische Operatoren

Logische Operatoren verknüpfen Wahrheitswerte miteinander. Es gibt 4 logische Operatoren: Und (&&), Oder (||), Xor (^) und Nicht (!).

Maschinennähe

Bei der Einteilung nach Maschinennähe wird untersucht, inwieweit eine Programmiersprache für einen besonderen Prozessor spezialisiert ist. Nach diesem Kriterium lassen sich Maschinensprachen, maschinennahe Sprachen und prozessorunabhängige Programmiersprachen unterscheiden.

Menü

In AWT gibt es "Pulldown"-Menüs und "Popup"-Menüs. Pulldown-Menüs sind fest in der Menüleiste eines Fensters verankert, während Popup-Menüs ohne feste Verankerung an einer beliebigen Stelle über dem GUI aufspringen können.

Methode

Eine Methode beschreibt das Verhalten eines Objektes. Objekte kommunizieren durch gegenseitigen Methodenaufruf.
Syntax: [<modifier>] <rückgabetyp> <name> ([<argumentenliste>]) { Anweisungen}

Modifizierer

Modifizierer sind Schlüsselwörter, die den Gültigkeitsbereich von Variablen und Methoden definieren.

MouseEvent

Das MouseEvent wird immer dann verwendet, wenn eine Maustaste gedrückt, losgelassen oder geklickt wird. Es wird auch dann ausgelöst, wenn die Maus mit oder ohne gedrückter Maustaste bewegt wird.

MouseListener

Ein MouseListener kann mit Hilfe der Methode addMouseListener(MouseListener l) bei einer Komponente registriert werden. Somit wird er benachrichtigt, wenn ein MouseEvent auftritt. Die dem Event entsprechende Handler-Methode wird aufgerufen.

MouseMotionListener

Ein MouseMotionListener kann mit Hilfe der Methode addMouseMotionListener(MouseMotionListener l) bei einer Komponente registriert werden. Somit wird er benachrichtigt, wenn ein MouseEvent auftritt. Die dem Event entsprechende Handler-Methode wird aufgerufen.

Objekt

Konkrete Ausprägung einer Klasse.

Operatoren

Operatoren sind die verknüpfenden Glieder zwischen Variablen und Literalen.

Optionsfelder

Ein Optionsfeld bietet eine einfache "An/Aus"-Eingabemöglichkeit mit einem Textlabel. Zur Erstellung wird die Klasse Checkbox verwendet.

Package

Klassen können in Packages zusammengefasst werden. Das Schlüsselwort package ordnet eine Klasse einem Package zu. Das Schlüsselwort import macht den Inhalt von Packages für eine Klasse zugänglich.

Panel

Das Panel ist ein rechteckiger Bereich, in den Komponenten eingefügt werden können. Ein Panel muss in ein Window (oder eine Subklasse von Window) positioniert werden, damit es angezeigt werden kann.
Das Panel ist ein in der Hierarchie universell einsetzbarer Container ohne besondere Funktionalität wie z.B. Fenster-Dekoration. Der Default-Layout-Manager des Panels ist FlowLayout.

Perl

Perl ist eine Skriptsprache die sich sehr gut für die Programmierung von dynamischen Webinhalten eignet. Perl ist jedoch recht kryptisch und nur bedingt objektorientiert.

Polymorphie

Ein Objekt kann durch eine Variable vom Typ einer Superklasse referenziert werden. Über diese Referenz sind im Objekt nur die Eigenschaften und Methoden der Superklasse sichtbar.

Primitive Datentypen

Java kennt 8 elementare Variablentypen zum Speichern von Integern, Fließkommazahlen, Zeichen und boolschen Werten. Diese werden auch als primitive Datentypen bezeichnet, da sie feste Bestandteile der Sprache und keine Objekte sind. Alle primitiven Datentypen haben in Java eine feste Länge.

Programmiermodell

Wenn Programmiersprachen anhand ihres Programmiermodells eingeteilt werden, muss man die Grundkomponenten und deren Verknüpfung untersuchen. Nach dem Programmiermodell lassen sich Programmiersprachen in imperative, prozedurale, funktionale, objektorientierte und logische Programmiersprachen unterteilen.

Referenztypen

Referenztypen selber sind nur Zeiger. Wenn sie den Wert null haben, zeigen sie auf nichts. Wenn aber ein Objekt erzeugt wird, zeigt die Referenz auf den Anfang des Speicherbereiches, in dem das Objekt liegt.

Rückgabetyp

Der Rückgabetyp einer Methode legt fest, welcher Datentyp als Ergebnis der Methodenausführung an den Aufrufer der Methode zurückgeliefert wird.

RuntimeException

Die Klasse RuntimeException definiert Exceptions, die nicht syntaktisch (try, throws) behandelt werden müssen. Häufigste Ursache für eine RuntimeException ist ein Programmierfehler.

Schleifen

Eine Schleife ermöglicht die mehrmalige Ausführung eines Codeblocks. Dabei wird bei jedem Durchlauf eine Bedingung überprüft. Je nachdem, ob diese Bedingung zutrifft, wird der Codeblock erneut ausgeführt.

Schlüsselwörter

Schlüsselwörter sind eine wichtige Säule im Aufbau von Programmiersprachen, denn sie sind die sprachlichen Grundelemente.

Streams

Streams sind Instanzen unterschiedlicher Klassen des Paketes java.io. Es existieren Stream-Klassen, um Daten aus Dateien zu lesen oder in Dateien zu schreiben, in einen Speicher zu schreiben oder aus diesem Lesen, oder Streams, die ganze Objekte als Daten verarbeiten können.

StringBuffer

Ein StringBuffer ist eine Art Container, in dem ein String abgelegt und über die Methoden der Klasse StringBuffer modifiziert werden kann. Der wesentliche Unterschied zur Klasse String ist, dass der StringBuffer veränderbar ist.

String-Konkatenierung

Der überladene Operator + hängt einzelne Strings aneinander. Diese Konkatenierung wird aktiv, sobald bei einer Addition einer der beiden Summanden vom Typ String ist. Der andere Summand wird intern zu einem String konvertiert und beide werden aneinander gehängt.

Swing

Die Swing-Klassen stellen die konsequente Erweiterung des AWT durch hundertprozentig in Java ("100% pure Java") implementierte GUI-Elemente dar.

TextArea

Die TextArea ist eine mehrzeilige Komponente für editierbaren Text, der vom Benutzer verändert werden kann. TextAreas werden mit der Klasse TextArea erstellt.

Textfeld

Das Textfeld ist eine einzeilige Komponente für editierbaren Text, der vom Benutzer verändert werden kann. Textfelder werden mit der Klasse TextField erstellt.

Throws-Klausel

Eine Methode, die eine oder mehrere CheckedExceptions wirft, muss dies durch den Zusatz throws <Exceptiontyp> in der Methodendefinition bekannt geben.

Überladen

In einer Klasse können mehrere Methoden mit gleichem Namen und auch mehrere Konstrukoren auftreten. Anhand der Argumentenliste muss eine Unterscheidung der Methoden oder Konstruktoren möglich sein.

Überschreiben von Methoden

Das Verhalten geerbter Methoden kann durch Überschreiben modifiziert werden.

Variablen

Variablen sind Platzhalter

Vererbung

Durch das Schlüsselwort extends erbt eine Klasse Eigenschaften und Methoden einer Superklasse. Die Klasse muss in der Definition nur noch die Variablen oder Methoden aufführen, die sie von der Superklasse unterscheiden. In Java ist nur Einfachvererbung möglich.

Vergleichsoperatoren

Vergleichsoperatoren heißen häufig auch relationale Operatoren. Sie vergleichen Ausdrücke miteinander und liefern einen Wahrheitswert vom Typ boolean zurück.

Virtuelle Maschine

Java läuft in einer so genannten Virtual Machine (Virtuelle Maschine = VM). Zuerst wird der vom Programmierer eingegebene Quelltext (Endung .java) durch einen Java Compiler in Java Bytecode (hat die Endung .class) umgewandelt. Die virtuelle Maschine ist ein Interpreter, der den Java Bytecode ausführt.

Werfen einer Exception

Eine Exception kann über das Schlüsselwort throw geworfen werden.

Zugriffsrechte

Zugriffsrechte steuern den Zugriff auf Klassen, Interfaces, Variablen, Methoden und Konstruktoren. Java kennt 4 Zugriffsrechte: public protected, package und private.

Zuweisungsoperator

Die Zuweisung erfolgt in Java mit dem Gleichheitszeichen. Dabei wird immer von rechts nach links zugewiesen, d. h. der linke Operand erhält den Wert des rechten Operanden.

Das kleine Lexikon zum Thema Java stammt aus dem kostenlosen Online-Kurs Java der TEIA AG - Internet Akademie und Lehrbuch Verlag.

Mehr Infos dazu und zu 50 weiteren kostenlosen Online-Kursen finden Sie hier.