![]() |
![]() ![]() die führende deutsche Java-Seite ![]() ![]() und Hannes Gamperl ![]() |
![]()
|
![]()
Java-Neuigkeiten
Einführung
Workshops
Wissen
Ressourcen
K&K Intern
Weitere Angebote
EMail an java@acc.de
|
In Klassen werden Variablen und Methoden, die auf diese Variablen zugreifen und sie verändern können, gebündelt.Das ist der grosse Unterschied zu herkömmlichen Sprachen wie BASIC, Pascal oder C, in denen Variablen und Funktionen erstmal keinen Bezug zueinander haben. Je umfangreicher und komplexer ein Programm wird, desto grösser wird das Problem der "Querschläger" - bestimmte Teile eines Programms verändern Variablen in anderen Programmteilen, obwohl dies garnicht beabsichtigt war. In Java wurde deshalb grossen Wert auf die Abschottung von Objekten gelegt: Ein ausgeklügeltes abgestuftes System regelt den Zugriff auf die Variablen und Methoden in einer Klasse. Man kann sich Klassen auch als Art Zellen vorstellen: Die Methoden und Variablen, die von aussen zugänglich sind, schützen die Variablen und Methoden in der Zelle.
Eine der wichtigsten Eigenschaften objektorientierter Sprachen
ist die sogenannte Vererbung: Damit kann eine bestehende
Klasse als Vorlage für eine neue Klasse verwendet werden
und die darin enthaltenen Variablen und Methoden mitverwendet
und auch neu definiert werden. Zu Java werden eine Reihe bereits
vorgefertigter Klassen, in thematisch geordneten Klassenbibliotheken
mitgeliefert, die Grundfunktionen und Standardaufgaben abdecken.
Dazu gehören z.B. die Dateibehandlung, Grafikausgabe, Internetprotokolle,
aber auch häufig benötigte Algorithmen wie Listenverwaltung,
Hash-Tables usw.
Moderne Programme
müssen in der Lage sein, mehrere Funktionen gleichzeitig
auszuführen: Während ein Zähler hochzählt,
bewegen sich Objekte auf dem Bildschrirm und der Benutzer scrollt
einen Text - all dies muss Ein Applet ist eine spezielle Art von Programm: Es wird normalerweise direkt aus dem Internet geladen und sogleich im Browser ausgeführt. Damit das Applet keinen Unfug anstellen kann (z.B. Daten ausspähen oder löschen) unterliegt es deshalb einer Reihe von Sicherheitsbeschränkungen und bekommt bestimmte Vorgaben, an die es sich halten muss. Der "Lebenszyklus" eines Applets unterscheidet sich von einer normalen Applikation: Das Applet wird vom Browser gestartet und, z.B. wenn der Benutzer die entsprechende Seite verlässt, wieder gestoppt.
Folgende Methoden kennzeichnen die Lebensphasen eines
Applets. Um den Aufruf braucht sich der Programmierer dabei nicht
zu kümmern, dies geschieht automatisch wenn der entsprechende
Fall eintritt: init() Initialisierung start() Starten stop() Stoppen destroy() Löschen paint() Grafikausgabe Animationen ohne Flimmern durch Double-Buffering Wenn Sie mit einfachen ersten Grafikausgaben beginnen, werden Sie wahrscheinlich geneigt sein, in den für die Grafik vorgesehenen Bereich munter Ausgaben zu machen. Während dies für manche einfache Aufgaben durchaus seinen Sinn haben kann, stösst man bei schnellen Animationen auf ein Problem: Bei grösseren Änderungen ist es meistens notwendig, zuerst den Grafikbereich zu löschen, um dann die neuen Ausgaben in den nun freien Bereich zu machen. Führt man dies direkt im sichtbaren Grafikbereich aus, erzeugt dies ein sehr unschönes Flimmern des Bildes, da der Benutzer jede Änderung sofort zu sehen bekomt - also auch das Löschen. Die Lösung besteht nun darin, in einem zweiten, gleich grossen Grafikbereich alle notwendigen Änderungen durchzuführen und nach Beendigung aller Ausgaben diesen in den sichtbaren Bereich zu kopieren. Diese Technik wird als Double-Buffering bezeichnet.
![]()
| |||||
Nach oben |
© 1998 Christoph Bergmann / ACCESS Internet. Alle Rechte vorbehalten. |