Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik IV Universität Bayreuth Fakultät für Mathematik, Physik und Informatik D-95440 Bayreuth Lehrstuhl für Mathematik und ihre Didaktik – Didaktik der Informatik Universität Bayreuth Fakultät für Mathematik, Physik und Informatik D-95440 Bayreuth Installationsanweisungen Benötigte Komponenten: ▫ Java Development Kit (JDK 5.0 Update 13) Download: http://java.sun.com/javase/downloads/index_jdk5.jsp Installation: ▫ Doppelklick auf das Installationsprogramm ▫ Empfohlenes Verzeichnis: C:\Programme\Java ▫ Eclipse 3.3 (Europa) Download: ▫ http://download.eclipse.org/webtools/downloads/drops/R2.0/R-2.0-200706260303/ ▫ Installation durch Entpacken des Ordners (unter Windows ein zip) Download der JSF-Libraries von unserer Homepage 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 2 Java Java ist eine Objekt-Orientierte (OO) Programmiersprache Java ist portabel und läuft auf verschiedenen Betriebssystemen ▫ Keine (oder kaum) Modifikationen bei Rechner- oder Betriebssystemwechsel nötig Java ist (im Augenblick) DIE Sprache zur Anwendungsimplementierung Architektur: Programm Programm Java Virtual Machine (JVM) Betriebssystem Rechner 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 3 Eclipse Eclipse ist ein Editor, in dem Java-Programme erstellt werden können ▫ Im Augenblick meist verwendeter Editor ▫ Unterstützt die Programmierung durch viele Hilfsmittel Eclipse ist selbst ein Java-Programm Architektur: Eclipse Programme Java Virtual Machine (JVM) Betriebssystem Rechner 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 4 Warum Objekt-Orientierte Programmierung? Probleme vor Objekt-Orientierung: ▫ Programme werden immer größer, komplexer und unüberschaubarer Wo ist der letzte Tastendruck gespeichert? Wo ist der Programmteil, der für die Maus zuständig ist? ▫ Nach einer Weile versteht niemand mehr das Programm Den Programmteil, der für die Eingabe zuständig ist hat der Kollege geschrieben, und der ist bei der Konkurrenz. Was ist denn das hier für ein Trick – besser nicht anfassen! ▫ Es kann nach einiger Zeit nicht mehr geändert werden Beispiel: Cobol in Vergangenheit sehr beliebte monolithische Programmiersprache Die Cobol-Programmierer der deutschen Banken sind längst in Rente! Wer kann heute noch Cobol? Prinzip und Lösung durch Objekt-Orientierung: ▫ Große Programme in kleine, überschaubare und "verstehbare" Einheiten (Packages, Klassen, Objekte) aufteilen. 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 5 Prinzip der Objekt-Orientierung Ein Programm in Ausführung (Laufzeit) besteht aus Objekten, die sich gegenseitig Nachrichten (Methodenaufrufe) schicken Objekt 1 Methodenaufruf Objekt 2 Methodenaufruf Objekt 3 Zur Programmierzeit werden Klassen erstellt, aus denen dann beim Start des Programms Objekte instanziiert (erstellt) werden Klasse 1 Programmierzeit Laufzeit 22.10.2007 Objekt 1 Objekt 2 Klasse 2 Objekt 3 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 6 Objekte und Klassen Objekte stehen für ▫ Gegenstände (abstrakt oder real) ▫ Akteure Objekte haben ▫ Eigenschaften und einen Zustand (Felder, Variablen) ▫ Methoden (damit wird eine Nachricht an ein Objekt geschickt) Klassen enthalten ▫ den "Bauplan" für ein Objekt 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 7 Beispiel für Instanziierung Instanziierung ist der Vorgang, wenn aus einer Klasse ein Objekt erstellt wird 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 8 Erstellen eines Java Projekts in Eclipse - 1 Erstellen eines Projekts ▫ File > New > Other Auswahl eines Java Projects ▫ "Java Project" auswählen ▫ "Next"-Button drücken 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 9 Erstellen eines Java Projekts in Eclipse - 2 Dem Projekt einen Namen geben ▫ In unserem Beispiel "HelloWorld" ▫ "Finish"-Button drücken Nun sollte ein neues Projekt namens "HelloWorld" im Package Explorer verfügbar sein 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 10 Erstellen einer Klasse - 1 Starten des Wizzards für eine neue Klasse ▫ Rechtsklick auf "src" im Projekt ▫ Auswahl von New > Class 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 11 Erstellen einer Klasse - 2 Angabe des Packages und Name der Klasse ▫ Package angeben Gründe für die Wahl des Package-Names kommen noch ▫ Klassenname angeben Klassen beginnen immer mit einem Großbuchstaben ▫ Main-Methode erzeugen ▫ "Finish"-Button drücken 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 12 Überblick über die erstellte Klasse Die erstellte Klasse enthält Angaben über ▫ package ▫ die Klasse selbst ▫ Eclipse hat bereits die main-Methode generiert 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 13 Die main-Methode Die main-Methode ist die "wichtigste" Methode eines jeden Programms Wenn ein Java-Programm gestartet wird, dann wird die main-Methode aktiviert Davon ausgehend beginnt die weitere Programmausführung ▫ In diesem Beispiel gibt die main-Methode einen Text auf der Konsole aus ("Hello, World!!") 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 14 Starten eines Java-Programms in Eclipse Java-Programme können u.a. direkt aus Eclipse gestartet werden (das erleichtert das Programmieren und Testen) Vorgehen ▫ Rechtsklick auf die Klasse ▫ Auswahl von Run As > Java Application Ergebnis ▫ Die Konsole geht auf und führt das Programm aus 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 15 Übungsaufgabe Installieren Sie zur Übung Java und Eclipse Erstellen Sie ein HalloWelt-Projekt Erstellen Sie eine Klasse Hallowelt ▫ Die Klasse soll auf der Konsole "Hallo, Welt!!" ausgeben. 22.10.2007 © 2007 · Lehrstuhl für Angewandte Informatik IV · Didaktik der Informatik 16