Willkommen zu JBuilder in 14 Tagen! In den nächsten zwei Wochen werden Sie alles über die visuelle Entwicklungsumgebung JBuilder von Borland erfahren, ebenso wie über die zugrunde liegende Sprache - Java. Sie werden erfahren, wie Standalone-Anwendungen unter Java entwickelt werden, und wie Sie Applets erzeugen, die im Internet und im World Wide Web ausgeführt werden.
Außerdem werden Sie erfahren, wie Sie Ihre Anwendungen und Applets debuggen, testen und einsetzen. Das ist aufgrund der Natur der Java-Programmierung und der Tatsache, daß Java-Programme auf beliebigen Plattformen ausgeführt werden können, ein ganz wesentlicher Aspekt.
Dies waren die allgemeinen Ziele dieses Buchs. Heute beginnen Sie Ihre Reise mit den folgenden Themen:
Java ist eine objektorientierte Programmiersprache, die von Sun Microsystems entwickelt wurde, einer Firma, die berühmt für ihre professionellen UNIX-Workstations ist. Ursprünglich an C++ orientiert, sollte Java eine kleine, portable, robuste und objektorientierte Sprache sein. Diese Eigenschaften machten es zur »Sprache der Wahl« im World Wide Web, auf das von den verschiedensten Plattformen und Betriebssystemen aus zugegriffen wird.
Java-Applets sind dynamisch und interaktiv, stellen den Anwendern im Web also ein ganz neues Spektrum an Möglichkeiten bereit. Nachdem Sie ein Java-Applet erzeugt und kompiliert haben, betten Sie es in eine HTML-Web-Seite (HyperText Markup Language) ein und veröffentlichen diese Web-Seite auf einem Web-Knoten. Wenn der Anwender mit einem Java-fähigen Browser auf die Web-Seite zugreift, lädt dieser den Binärcode des eingebetteten Applets auf das Computersystem des Anwenders und führt es aus.
Technisch gesehen brauchen Sie keinen Browser auf Ihrem System, um Ihre Applets zu testen, weil JBuilder einen eigenen integrierten Debugger besitzt (siehe Kapitel 11), ebenso wie den Appletviewer von Sun. Es empfiehlt sich jedoch, endgültige Tests unter kommerziell verfügbaren Browsern auszuführen.
Nicht alle Browser sind gleich aufgebaut, Sie brauchen also mehrere davon, um Ihre Applets ausreichend zu testen. Die gebräuchlichsten Browser sind momentan Netscape Navigator und Microsoft Internet Explorer. Zum Zeitpunkt der Drucklegung dieses Buchs bieten weder Netscape noch Microsoft einen Browser, der mit dem JDK 1.1 kompatibel ist, aber das sollte sehr bald der Fall sein. HotJava von Sun unterstützt JDK 1.1 und kann zum Testen der Applets, die Sie in JBuilder erzeugen, verwendet werden. Er steht auf der HotJava-Web-Seite unter http://java.sun.com/products/hotjava zur Verfügung.
Neben Applets, die in Browsern ausgeführt werden können, können Sie auch vollfunktionale Anwendungen entwickeln, die dieselben Aufgaben erfüllen wie Anwendungen in anderen Programmiersprachen, etwa C, C++, Pascal oder Delphi. Der HotJava-Browser von Sun ist ausschließlich in Java geschrieben, ebenso wie ein Großteil von JBuilder.
Die Sprache Java wurde ursprünglich entwickelt, um die Probleme für die Steuerung von PDAs (Personal Digital Assistents, das waren Module für den Empfang privater Fernsehkanäle) und kleinen Elektrogebrauchsgeräten zu lösen, etwa Mikrowellen oder Toaster. Die Sprache mußte robust, klein und portabel sein. Keine der damals (ca. 1990) verfügbaren Programmiersprachen konnte diese Aufgabe zufriedenstellend lösen. Einige waren zu kompliziert, als daß man wirklich robusten Code hätte schreiben können, und keine davon war portabel. Der Code mußte für jeden in Frage kommenden Chip neu kompiliert werden, und die Chips in den Geräten waren größtenteils sehr spezifisch und wurden außerdem häufig aktualisiert.
Die Sprache, die alle Anforderungen erfüllte, gab es einfach noch nicht, deshalb beschloß man bei Sun, sie zu entwickeln. Die PDAs waren ein Flop (obwohl sie drohen, ein Comeback zu haben), und der Markt für Elektrogebrauchsgeräte nutzte die neue Sprache nie wirklich. Das Java-Team entdeckte jedoch, daß das Design der Sprache ideal für einen anderen Zweck geeignet war: Programmierung für das Internet. 1993 fand das World Wide Web weite Verbreitung, mit seinen unzähligen Plattformen und Betriebssystemen, und es brauchte dringend eine plattformunabhängige Sprache - Java hatte ein neues Zuhause gefunden.
Die aktuelle Version des JDK (Java Development Kit) ist JDK 1.1, die auch im JBuilder enthalten ist.
Die Sprache Java wurde so entwickelt, daß sie plattformunabhängig eingesetzt werden kann. Das bedeutet, Programme, die in Java geschrieben sind, können einmal kompiliert und auf jeder Maschine, die Java unterstützt, ausgeführt werden. Was aber genau bedeutet Plattformunabhängigkeit und wie unterscheidet sie sich von dem, was vor Java war?
Java hat das beste aus beiden Welten übernommen. Das Java-Team hat eine plattformspezifische Schicht eingeführt, die Virtuelle Maschine (VM), die eine Schnittstelle zwischen der Hardware und dem Java-Programm darstellt. Wenn Sie beispielsweise einen Java-fähigen Browser auf Ihrem Computer installieren, wird auch eine Kopie des Java-Interpreters installiert, so daß Ihr Browser Java-Applets und Ihr System Standalone-Java-Programme ausführen können.
Die VM bietet jedem Applet, das auf einem System ausgeführt werden will, dieselbe Schnittstelle, deshalb sehen aus der Perspektive der Applets alle Maschinen gleich aus. Das Applet selbst wird in eine Art interpretierbaren Code kompiliert, Java-Bytecodes genannt. Dies spezielle Codeform kann auf jeder beliebigen Plattform ausgeführt werden, die die VM installiert hat.
Sun's Werbeslogan »Einmal schreiben, überall ausführen« wird von Java erfüllt. Und das ist neben allen anderen Eigenschaften der Sprache der Aspekt, der sie so wichtig für die interaktive Web-Programmierung macht.
Java ist eine echte objektorientierte Sprache, die Ihnen ermöglicht, flexible, modulare Programme zu erzeugen. Sie beinhaltet mehrere Klassenbibliotheken, die grundlegende Datentypen, Systemeingabe- und Ausgabemöglichkeiten bereitstellen, ebenso wie andere Utility-Funktionen. Außerdem gibt es Funktionen für die Arbeit im Netzwerk, allgemeine Internet-Protokolle, Bildverarbeitung sowie einen Toolkit zur Entwicklung von Benutzeroberflächen. Die Objektklassen von Java bieten eine umfassende Funktionalität, und sie können so erweitert und verändert werden, daß neue Klassen entstehen, die genau auf die Bedürfnisse Ihrer Programme abgestimmt sind.
Eines der Ziele beim Entwurf von Java war, eine Sprache zu erzeugen, die klein und robust sein sollte. Weil man dabei eine völlig neue Sprache entwickelte, konnte man einige der Fallstricke meiden, die andere, komplexere Sprachen aufwiesen. Durch Weglassen von Dingen wie Zeigern und Zeigerarithmetik sowie das Wegfallen einer expliziten Speicherverwaltung machte das Java-Entwicklerteam Java zu einer der einfachsten Sprachen. Und trotzdem können Sie in Java alles machen, was auch in herkömmlichen Programmiersprachen möglich ist. Wenn Sie schon eine höhere objektorientierte Programmiersprache eingesetzt haben, wie etwa C++ oder Delphi, wird Ihnen vieles von Java vertraut vorkommen.
JBuilder ist Borland's visuelle Entwicklungsumgebung für Java. Sie beinhaltet einen Projekt-Browser, einen Code-Editor, ein visuelles Entwurfswerkzeug, eine Komponentenpalette, einen Eigenschafts-Inspektor, einen integrierten Debugger und einen Compiler. Diese Elemente werden in Kapitel 5 vorgestellt. Darüber hinaus ist im JBuilder der JDK 1.1 von Sun enthalten, und diese Kombination versorgt Sie mit einer vollständigen Programmierumgebung, die Ihnen ermöglicht, sofort produktiv mit Java zu werden.
JBuilder hat die »Two-Way-Tools« (ursprünglich in Delphi eingeführt) übernommen, die Ihren visuellen Entwurf und den Quellcode synchronisieren. Alle Änderungen, die Sie am visuellen Entwurf vornehmen, gehen automatisch auch in den Quellcode ein. Alle Änderungen, die Sie am Quellcode vornehmen, und die die visuelle Oberfläche betreffen, werden auch unmittelbar im visuellen Entwurf berücksichtigt. Diese Synchronisierung ermöglicht Ihnen, Ihr Programm in genau dem Modus zu entwickeln, der für das jeweilige Programmelement am besten geeignet ist, wodurch die Entwicklung schneller und einfacher wird.
JBuilder kapselt und erweitert einen Großteil der Java-Funktionalität in Komponenten, die auch als JavaBeans bezeichnet werden.
JavaBeans geben Ihnen eine Möglichkeit, Ihre Java-Programme unter Verwendung von Drag&Drop-Komponenten visuell zu entwerfen. Diese Komponenten erweitern die Java-Klassen von Sun, um die visuellen und nicht-visuellen Entwurfselemente Ihrer Programme zu verbessern. Die BAJA-Initiative von Borland wurde als zentraler Grundsatz in Sun's Definition von JavaBeans übernommen, deshalb folgen die Programme, die Sie unter Verwendung von JBuilder-Komponenten entwerfen, den Standards von Sun.
Die Komponentenpalette von JBuilder enthält zahlreiche fertige JavaBeans für Sie, die Sie in Ihren Java-Applets und Anwendungen nutzen können. Basierend auf der JBCL (JavaBean Class Library) werden diese Komponenten in Kapitel 7 genauer beschrieben.
Das Installationsprogramm von JBuilder kümmert sich um die meisten Details der Installation, aber es gibt einige Dinge, die Sie berücksichtigen sollten. Vorbereitung ist alles. Dieser Abschnitt beschreibt, wie Sie JBuilder 1.0 für Windows von CD installieren, was Sie nach der Installation beachten müssen und wie Sie den JBuilder deinstallieren.
Bevor Sie JBuilder installieren, sollten Sie einige Dinge lesen:
Es ist sehr wichtig, das alles zu lesen, bevor Sie das Installationsprogramm aufrufen, damit Sie vorbereitet sind, falls irgendein Fehler auftritt. Sie können INSTALL.TXT auch ausdrucken, damit Sie die Hilfe stets zur Hand haben - nur für den Fall der Fälle.
JBuilder gibt es in drei Versionen: Standard, Professional (Pro) und Client/Server (C/S). Ein Großteil der Anweisungen für die Installation gilt für alle drei Versionen. Alle Unterschiede werden entsprechend gekennzeichnet.
Für das Installationsprogramm von JBuilder (InstallShield) sind mindestens 15 MB freier Speicher im TEMP-Verzeichnis von Windows erforderlich, um die während der Installation verwendeten temporären Dateien aufzunehmen, unabhängig davon, welches Laufwerk Sie für JBuilder vorgesehen haben. Für JBuilder selbst sind etwa 78 MB Plattenspeicher für eine »normale«, 35 MB für eine »kompakte« Installation erforderlich.
JBuilder 1.0 für Windows wird auf CD bereitgestellt. Bevor Sie mit der Installation beginnen, speichern Sie Ihre Arbeit und schließen alle anderen Anwendungen. Es gibt drei Möglichkeiten, das Installationsprogramm InstallShield aufzurufen:
Nachdem das Installationsprogramm geladen ist, haben Sie die Möglichkeit, die Datei INSTALL.TXT zu lesen. Wenn Sie sie noch nicht gelesen haben, sollten Sie das jetzt nachholen und dann auf die Schaltfläche Weiter klicken. Das Installationsprogramm wird initialisiert und im nächsten Dialog werden Sie aufgefordert, die Art der Installation auszuwählen: Standard, kompakt oder benutzerdefiniert. Geben Sie die gewünschte Information in das Dialogfeld ein und klicken Sie auf die Schaltfläche Weiter. Wenn Sie Hilfe brauchen, klicken Sie auf die Hilfe-Schaltfläche.
Nachdem Sie alle Fragen beantwortet haben, beginnt InstallShield, die Dateien zu dekomprimieren und auf Ihre Festplatte zu kopieren. Auf einem Pentium MMX mit 200 MHz dauert die normale Installation weniger als fünf Minuten. Nach der Installation erhalten Sie die Gelegenheit, die Datei README.TXT zu lesen. Wenn Sie das nicht schon vor der Installation gemacht haben, sollten Sie es jetzt nachholen. Sie enthält wichtige Informationen und spart Ihnen Zeit und Ärger.
Wenn Sie ein Modem besitzen, nutzen Sie den Vorteil der Online-Registrierung, die nach der Installation angeboten wird. Andernfalls füllen Sie die Registrierungskarte aus, um sich die Berechtigung für den technischen Support (Installation Hotline) zu sichern und über Upgrades und neue Produkte benachrichtigt zu werden.
Während der Installation werden Änderungen an der Registry von Windows 95 vorgenommen. Wenn Sie die Pro- oder die C/S-Version installieren, teilt einer der Einträge Windows 95 mit, den LIBS (Local InterBase Server) auszuführen, wenn Sie sich anmelden. Sie können LIBS auch manuell starten, indem Sie Start | Programme wählen, auf den Ordner Borland JBuilder klicken und dann auf das Icon Local InterBase Server. Das Zeichen für LIBS (eine CPU mit einem grünen Globus) sollte jetzt in der Symbolleiste von Windows 95 erscheinen.
Falls Sie es schon gemacht haben, dann müssen Sie eine Neuinstallation vornehmen, um die Dateien wiederherzustellen.
Aufgrund der zahlreichen Einträge in der Registry, die bei der Installation des JBuilder vorgenommen werden, ist es empfehlenswert, zur Deinstallation das Utility UnInstallShield zu verwenden, das der JBuilder bereitstellt, UNINST.EXE. Diese Datei wird bei der Installation in Ihr Windows-Verzeichnis kopiert. Darüber hinaus wird eine ISU-Datei (InstallShield Uninstall) erzeugt, die Informationen über Ihre JBuilder-Installation enthält:
Die ISU-Datei enthält Informationen, die das Utility zur Deinstallation braucht, um seine Arbeit ausführen zu können, deshalb sollten Sie darauf achten, diese Datei nicht versehentlich zu löschen.
Wenn der LIBS installiert wurde (Versionen Pro und C/S), müssen Sie ihn schließen, um die Deinstallation vornehmen zu können. Klicken Sie in der Statusleiste von Windows 95 auf das LIBS-Zeichen (die CPU mit dem grünen Globus) und wählen Sie aus dem Popup-Menü Shutdown.
Zur Deinstallation gehen Sie in den folgenden Schritten vor:
Es gibt möglicherweise noch ein paar Überbleibsel, die bei der Verwendung von JBuilder erzeugt werden, und die das Deinstallationsprogramm nicht erkennt. Insbesondere werden Projektdateien, die Sie erzeugt und im JBuilder-Verzeichnisbaum abgelegt haben, nicht gelöscht. Sie sollten also nach der Deinstallation und vor dem Löschen nach solchen Dateien suchen.
JBuilder ist intuitiv und einfach in der Anwendung. Es gibt jedoch Situationen, wo Sie Hinweise brauchen, wie eine Aufgabe ausgeführt werden kann, oder wie Sie das Produkt einsetzen können. Das Hilfe-Menü des JBuilder bietet Zugriff auf Online-HTML-Hilfedateien, die Sie beliebig durchsuchen können. Außerdem gibt es zahlreiche elektronische Dokumente, wie etwa README.TXT, die die neuesten Überarbeitungen und Aktualisierungen des Produkts beschreiben. Darüber hinaus gibt es für die Pro- und C/S-Versionen von JBuilder zahlreiche gedruckte Handbücher.
Wählen Sie Hilfe | Hilfethemen, damit Sie die Organisation der Hilfe-Dateien von JBuilder erkennen. JBuilder präsentiert seine HTML-Dateien in einem Browser-ähnlichen Fenster, wobei im linken Feld ein Inhaltsbaum angezeigt wird, der entsprechende Hilfetext im rechten Feld.
Sie können diese Dateien auch unabhängig vom JBuilder zugreifen, indem Sie die entsprechende HTML-Datei in Ihren Internet-Browser laden. Wenn Sie die Dateien auf diese Weise öffnen, können Sie mehrere Hilfedateien gleichzeitig anzeigen. Außerdem ist es bei dieser Prozedur möglich, sich unter Verwendung von Alt+Tab zwischen der Hilfe-Datei und der IDE zu bewegen.
Die Dokumentation des JBuilder umfaßt mehrere Handbücher:
Neben der gedruckten Dokumentation für das Produkt stellt Borland auch im Web Unterstützung für den JBuilder bereit, nämlich unter http://www.borland.com/jbuilder/. Außerdem gibt es mehrere Forum-Newsgroups, die Sie erreichen, indem Sie Ihren Newsreader auf forums.borland.com setzen. Diese offiziellen Borland-Forum-Newsgroups werden von TeamB-Freiwilligen betreut, das sind Entwickler, die ihrer Erfahrung nach in der Lage sind, Hilfestellung zu leisten. Und vergessen Sie nicht die wichtigste Java-Ressource unter http://www.javasoft.com/, der Java-Web-Seite von Sun.
Borland ist ein Vorkämpfer auf dem Gebiet der IDEs (Integrated Development Environment, Integrierte Entwicklungsumgebung), wo der Entwickler ein Programm auf ein und derselben Oberfläche erzeugen, kompilieren, debuggen und ausführen kann. Als Borland das Konzept der IDE in seinen DOS-Compilern einführte, war es revolutionär. Heute betrachten wir diese Art der kombinierten Funktionalität als Selbstverständlichkeit, aber Borland hat seine IDE ständig verbessert, und die JBuilder-IDE ist ein weiterer großer Schritt auf dem Gebiet der Programmierumgebungen.
Obwohl Sie später noch detaillierte Informationen über die JBuilder-Umgebung erhalten, soll hier ein schneller Überblick erfolgen, der Ihnen helfen soll, wenn Sie später in diesem Kapitel beginnen, Code einzugeben, nämlich im Abschnitt »Applets und Anwendungen«. Starten Sie JBuilder. Wenn er geladen ist, klicken Sie im obere Fenster des Projektfensters auf den Knoten WelcomeApp.java, so daß es aussieht wie in Abbildung 1.1 gezeigt.
Abbildung 1.1:
Die IDE von JBuilder
Das Hauptfenster enthält die Haupt-Menüleiste, die Symbolleiste, die Komponentenpalette sowie die Statusleiste. Die Haupt-Menüleiste präsentiert die JBuilder-Befehle in Textform. Die Symbolleiste zeigt eine Untermenge dieser Befehle als Icons an. Welche Icons angezeigt werden, kann eingestellt werden, Sie können also die gebräuchlichsten Befehle dort anlegen, um einen schnelleren Zugriff zu erhalten. Die Komponentenpalette beinhaltet Drag&Drop-JavaBean-Komponenten für den Aufbau einer Benutzeroberfläche für ein Programm. Die Statusleiste zeigt verschiedene Statusmeldungen der IDE an (etwa wenn eine Datei gespeichert wurde, oder Hinweise zum Compilerstatus).
Der AppBrowser besteht aus drei Breichen: dem Navigations-Bereich (oben links), dem Struktur-Bereich (unten links) und dem Inhalts-Bereich (rechts). Der Navigations-Bereucg zeigt die Dateien, aus denen sich das aktuelle Projekt zusammensetzt. In Abbildung 1.1 sehen Sie, daß Welcome.jpr aus einer .html-Datei und zwei .java-Dateien besteht. Wenn im Navigations-Bereich der Knoten WelcomeApp.java selektiert ist, zeigt der Struktur-Bereich die Hierarchie der Elemente an, aus denen sich diese Datei zusammensetzt, sowohl intern (wie etwa Methoden), als auch extern (wie etwa Importe). Im Inhalts-Bereich wird die eigentliche Datei angezeigt. Wenn eine editierbare Datei angezeigt wird, wird der Inhalts-Bereich zum Editor. Die AppBrowser-Statusleiste zeigt Zeile:Spalte, Geändert und Einfügen/Überschreiben für den Editor an, ebenso wie einige AppBrowser-spezifische Statusmeldungen.
Es gibt noch andere Fenster und Bereiche in der IDE, aber mit diesen grundlegenden Elementen haben Sie es bei Ihren ersten Projekten zu tun. Als nächstes verwenden Sie die Haupt-Menüleiste und den AppBrowser, um Ihr erstes Java-Programm zu erzeugen.
Es gibt zwei Arten von Java-Programmen: Applets und Anwendungen. Jetzt werden Sie je eines davon erzeugen. Was tun Sie, wenn Sie Ihr Programm als Standalone-Anwendung ausführen wollen, wenn es aber auch möglich sein soll, es als Applet über das Web auszuführen? Java ermöglicht Ihnen, das alles in einem einzigen Programm zu kombinieren, das beliebig ausgeführt werden kann. Hier werden wir uns jedoch darauf beschränken, separate Applets und Anwendungen zu erstellen.
Applets sind Java-Programme, die in der Regel in eine HTML-Web-Seite eingebettet und vom Web heruntergeladen werden, um sie in einem Browser auf dem Computersystem des Anwenders auszuführen. Der Browser muß Java-fähig sein, wenn der Anwender alle Vorteile des Applets nutzen soll, weil es beispielsweise Animation oder andere komplexe Java-Funktionen beinhalten kann. Applets können auch unter Verwendung des appletviewer-Utilities von Sun gesichtet werden.
Anwendungen sind vollfunktionale Programme, die in Java geschrieben wurden. Für ihre Ausführung ist kein Web-Browser erforderlich, aber auf der Ziel-Plattform muß die Java-VM installiert sein. Das bekannteste Beispiel für ein Java-Anwendungsprogramm ist der HotJava-Browser von Sun, der ausschließlich in Java geschrieben ist. Java-Anwendungen werden durch Aufruf des Java-Interpreters ausgeführt.
Darüber hinaus sollten Sie beachten, daß in Java die Groß-/Kleinschreibung berücksichtigt wird. Achten Sie also darauf, daß Sie Groß- und Kleinbuchstaben genau so eingeben wie hier gezeigt. Das betrifft auch Dateinamen. Für viele Anfänger der Java-Programmierung ist das einer der größten Stolpersteine.
Jetzt versuchen Sie, die Schritte in den folgenden Abschnitten in der IDE nachzuvollziehen. Wenn Sie steckenbleiben oder wirklich etwas falsch machen, wählen Sie einfach nur Datei | Schließen, weisen das Speichern der Dateien ab und beginnen von vorne. (Wenn Sie die Dateien bereits gespeichert haben und sie löschen wollen, bevor Sie von vorne anfangen, finden Sie Ihre Quellcode-Dateien im Unterverzeichnis myprojects von JBuilder, Ihre kompilierten Klassendateien in myclasses.)
Wenn beim Starten das Projekt Welcome.jpr im JBuilder angezeigt wird (oder irgend ein anderes Projekt), wählen Sie Datei | Schließen, so daß Sie ein neues Projekt beginnen können.
Wählen Sie in der Haupt-Menüleiste des JBuilder Datei | Neues Projekt. Im Feld Datei: des Dialogs Projekt-Experte: Schritt 1 von 1 ändern Sie den Projektdateinamen auf c:\JBuilder\myprojects\Intro.jpr und klicken auf die Schaltfläche Fertigstellen.
Wenn das AppBrowser-Fenster erscheint, klicken Sie auf das Icon Dem Projekt hinzufügen (das Plus-Zeichen auf dem Ordner) im Navigations-Bereich, um den Dialog Datei öffnen/erstellen anzuzeigen. Auf der Datei-Seite geben Sie in das Feld Dateiname: HelloWorld.java ein und klicken dann auf die Schaltfläche Öffnen.
Im Inhalts-Bereich geben Sie das Java-Programm ein, das Sie in Listing 1.1 sehen. Geben Sie diesen Code genau wie hier gezeigt ein und achten Sie auf die korrekte Darstellung von Klammern, geschweiften Klammern und doppelten Anführungszeichen. Beobachten Sie, was während der Eingabe im Struktur-Bereich passiert.
1: class HelloWorld {
2: public static void main (String args[]) {
3: System.out.println("Hello World!");
4: }
5: }
Nachdem Sie das Programm eingegeben haben, wählen Sie Datei | Alles speichern, um Ihre Arbeit zu sichern. In der Statusleiste des Fensters wird eine Bestätigung angezeigt.
Jetzt haben Sie Ihre erste Java-Anwendung geschrieben, und Sie können sie kompilieren und ausführen. Zuvor müssen Sie jedoch das Fenster öffnen, in dem die Ausgabe angezeigt wird. Weil diese Anwendung versucht, direkt auf den Bildschirm zu schreiben, so, als handelte es sich um eine DOS-Anwendung, zeigt JBuilder seine Ausgabe in einem speziellen Konsolenfenster an, dem Ausführungsprotokoll. Um dieses Fenster aufzurufen, wählen Sie in der Haupt-Menüleiste den Eintrag Ansicht | Ausführungsprotokoll.
Nachdem Sie bereit für die Ausgabe sind, stellen Sie sicher, daß im Navigations-Bereich des AppBrowser die Datei HelloWorld.java selektiert ist. Kompilieren Sie Ihr Programm und führen Sie es gleich aus, indem Sie auf das Start-Icon in der Symbolleiste klicken - auf dem Icon ist ein Blitz angezeigt.
Der Compiler sollte das Programm fehlerlos kompilieren. Wenn Sie Fehler erhalten, werden diese im unteren Teil des Editor-Fensters im Inhalts-Bereich angezeigt. Nehmen Sie alle erforderlichen Korrekturen vor, so daß das Programm so aussieht, wie in Listing 1.1 gezeigt (und beachten Sie dabei die Groß-/Kleinschreibung)., und versuchen Sie es erneut.
Wenn das Programm erfolgreich kompiliert wurde, erscheint die neue Datei HelloWorld.class im Unterverzeichnis myclasses von JBuilder. Dies ist die Java-Bytecode-Datei, die jetzt in jeder Java-VM-Installation ausgeführt werden kann.
Abbildung 1.2 zeigt, wie das Ausführungsprotokoll-Fenster aussehen sollte, nachdem Sie Ihr Programm ausgeführt haben.
Abbildung 1.2:
Ihre erste Java-Anwendung sagt Hello World!
Ganz sicher wollen Sie auch zu allen Ihren Freunden im World Wide Web Hallo sagen, Sie brauchen also auch ein HelloWorld-Applet. Weil Applets auf einer HTML-Web-Seite angezeigt werden, können sie komplizierter als Anwendungen sein. Sie können beispielsweise nicht einfach »Hello World!« auf die Standardausgabe schreiben, weil eine Web-Seite dieses Konzept nicht kennt. Sie müssen den Koordinatenraum auf der Web-Seite definieren, in dem Ihr Applet ausgeführt wird, und dann die Meldung mit den Grafikfunktionen in diesem Bereich ausgeben.
Um das Applet zu erzeugen, klicken Sie erneut auf das Icon Dem Projekt hinzufügen im Dialog Datei öffnen/erstellen. Geben Sie auf der Datei-Seite in das Feld Dateiname: HelloWorldApplet.java ein und klicken Sie auf die Öffnen-Schaltfläche.
Im Inhalts-Bereich geben Sie das in Listing 1.2 gezeigte Java-Programm ein. Schreiben Sie das Programm genau so ab wie hier angezeigt und achten Sie darauf, daß alle Klammern, geschweiften Klammern und doppelten Anführungszeichen korrekt eingegeben werden.
Listing 1.2: HelloWorldApplet.java
1: import java.awt.Graphics;
2: public class HelloWorldApplet extends java.applet.Applet {
3: public void paint(Graphics g) {
4: g.drawString("Hello World!", 20, 50);
5: }
6: }
Um die HTML-Seite zu erzeugen, klicken Sie auf das Icon Dem Projekt hinzufügen. Auf der Datei-Seite des Dialogs Öffnen/Erstellen geben Sie in das Feld Dateiname: HelloWorldWideWeb.html ein und klicken auf die Schaltfläche Öffnen.
Klicken Sie auf die Registerkarte Quelltext unterhalb des Inhalts-Bereichs, klikken Sie auf den Inhalts-Bereich und drücken Sie Strg+Pos1. Geben Sie den in Listing 1.3 gezeigten Text ein. Dieser Text stellt eine sehr einfache HTML-Seite dar, die Ihnen ermöglicht, Ihr Applet in einem Java-fähigen Browser auszuführen.
Listing 1.3: HelloWorldWideWeb.html
1: <HTML>
2: <HEAD>
3: <TITLE>Hello to the World Wide Web!</TITLE>
4: </HEAD>
5: <BODY>
6: <APPLET CODE="HelloWorldApplet.class" WIDTH=150 HEIGHT=50></APPLET>
7: </BODY>
8: </HTML>
Speichern Sie Ihre Arbeit, nachdem Sie fertig sind.
Dazu verwenden Sie die Datei HelloWorldWideWeb.html, die Sie gerade erzeugt haben, klicken mit der rechten Maustaste auf den Knoten für die Datei im Navigations-Bereich und wählen das Menüelement Start aus. Das bewirkt, daß das Copyright-Fenster von Sun angezeigt wird. Klicken Sie auf die Schaltfläche Akzeptieren. Jetzt wird der appletviewer angezeigt. Von nun an können Sie den appletviewer immer starten, wenn Sie eine HTML-Datei in der IDE ausführen.
Mit Hilfe des Appletviewer sehen Sie nicht die ganze HTML-Web-Seite, aber Sie sehen, wie der Applet-Teil der Seite aussehen wird.
Abbildung 1.3:
Ihr erstes Java-Applet sagt Hello World!
Das ist alles! Sie haben soeben Ihre erste Java-Anwendung und Ihr erstes Java-Applet erzeugt und die Ergebnisse begutachtet. Achten Sie darauf, Ihre Arbeit zu sichern, und wählen Sie Datei | Alles schließen, um das Projekt Intro zu schließen.
Heute haben Sie erfahren, wie die Sprache Java entstanden ist. Sie haben erste Informationen über JBuilder erhalten und wie er die Entwicklung von Java-Programmen vereinfacht.
Sie haben gelernt, JBuilder zu installieren, was nach der Installation zu passieren hat, und wie JBuilder deinstalliert wird. Außerdem wissen Sie, wo Sie in Dateien und gedruckter Dokumentation nach Hilfe suchen können, und Sie kennen jetzt einige der Online-Ressourcen, die Ihnen zur Verfügung stehen.
Außerdem haben Sie Ihr erstes Applet und Ihre erste Anwendung in Java entwikkelt, wozu Sie die IDE (Integrated Development Environment, Integrierte Entwicklungsumgebung) verwendet haben. Morgen werden Sie die Grundlagen der Sprache Java kennenlernen.
F Brauche ich einen Internet-Browser, um JBuilder einsetzen zu können?
A Sie haben heute das Utility appletviewer kennengelernt, um Ihr erstes Applet zu testen. Später haben Sie den integrierten Debugger von JBuilder genutzt, um Ihre Programme zu testen. Es ist also nicht notwendig, daß Sie einen Internet-Browser haben, um Ihre Programme zu entwickeln. Es empfiehlt sich jedoch, mehrere Browser zum Testen Ihrer Applets heranzuziehen, damit Sie überprüfen können, was die Anwender Ihrer Applets wirklich sehen, wenn sie Ihre Programme in ihren lokalen Umgebungen ausführen. Die wichtigsten davon erhalten Sie unter den folgenden Adressen:
F Sie haben gesagt, daß Applets in einer HTML-Web-Seite ausgeführt werden müssen. Wie erfahre ich mehr über die HTML-Programmierung?
A Die HTML-Programmierung ist nicht Thema dieses Buches, aber Sie werden so viel darüber lernen, daß Sie in der Lage sein werden, Ihre Applets auszuführen. Um auf Ihre Frage zurückzukommen, es gibt mehrere gute Bücher über HTML, unter anderem Web-Publishing mit HTML in 14 Tagen von Laura Lemay (Sams.net).
F Nach der heutigen Lektion weiß ich, daß Java-Applets mit Hilfe eines Java-fähigen Browsers heruntergeladen werden, wie etwa Navigator, Internet Explorer oder HotJava. Stellt das nicht eine riesige Sicherheitslücke dar? Wie kann jemand daran gehindert werden, ein Applet zu schreiben, das die Sicherheit meines Systems unterläuft - oder mein System beschädigt?
A Das Java-Team bei Sun hat sich viele Gedanken um die Sicherheit von Applets in Java-fähigen Browsern gemacht und die folgenden Einschränkungen implementiert:
Beachten Sie, daß es einige Browser dem Anwender erlauben, diese Einschränkungen zu deaktivieren. Als Applet-Entwickler können Sie jedoch nicht erwarten, daß diese Möglichkeiten zur Verfügung stehen. Darüber hinaus prüfen Java-Compiler und -Interpreter den Java-Quellcode sowie die Bytecodes, um sicherzustellen, daß der Programmierer keine hinterhältigen Tricks anwendet (beispielsweise, über Puffer oder Stack-Frames hinauszuschreiben). Diese Prüfungen können natürlich nicht jedes mögliche Sicherheitsproblem erkennen (kein System kann das versprechen!), aber sie reduzieren das Potential böswilliger Applets erheblich.
F Warum soll ich JBuilder von Borland verwenden, um Java-Programme zu erstellen?
A In Lektion 5 erfahren Sie mehr über die zahlreichen Vorteile, die JBuilder gegenüber den befehlszeilenorientierten Utilities aufweist. Hier sollen jedoch schnell die wichtigsten Aspekte aufgezeigt werden. Borland's IDE war die erste integrierte Entwicklungsumgebung, und die IDE von JBuilder nutzt die gesammelte Erfahrung von Borland, erstklassige Entwicklungswerkzeuge zur Verfügung zu stellen. JBuilder erbt die »Two-Way-Tools« von Borland's preisgekröntem Delphi, die Ihnen ermöglichen, die einzelnen Komponenten Ihres Programms so zu entwikkeln, wie für Sie am besten geeignet ist - Drag&Drop, wenn Sie einen visuellen Entwurf brauchen, Code-Eingabe, wenn das der beste Ansatz scheint - anschließend wird Ihr Code mit dem visuellen Entwurf synchronisiert, so daß Sie das beste aus beiden Welten nutzen können. Der AppBrowser von JBuilder, der integrierte Debugger sowie Online-Hilfedateien stellen alle Werkzeuge zur Verfügung, die Sie brauchen, um Ihre Java-Programme mit möglichst wenig Schreibaufwand, weniger Redundanz und weniger Fehlern zu entwickeln. Außerdem ist JBuilder die erste visuelle Entwicklungsumgebung, die den JDK 1.1 sowie die JavaBean-Komponenten unterstützt.