Einführung in die OOP in Java

Slides:



Advertisements
Ähnliche Präsentationen
Java-Servlets Gliederung: Allgemeine Informationen zu Servlets
Advertisements

Ein Beispiel in Java.
Praktikum Systementwicklung
Java: Programmierung grafischer Oberflächen
Threads Richard Göbel.
Java2D Richard Göbel.
Java: Programmierung grafischer Oberflächen
Grafische Benutzeroberfläche
Ein Beispiel in Java.
Sommersemester 2003 Lars Bernard
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 8 Sitzung 8: Zeichnen in Java.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 7 User Interfaces in Java Sommersemester 2003 Lars Bernard.
Einführung in die OOP in Java
AWT – Detailbetrachtung Java 3D – Seminar im Wintersemester 2002/2003 Christian Schneider.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Gerhard Gröger, Dipl.-Ing. D. Dörschlag Einführung in die Programmierung mit Java.
Java-Kurs Grafik Julian Drerup.
Programmieren mit JAVA Teil V. Grafikausgabe mit JAVA, das AWT Java wurde von Anfang an mit dem Anspruch entwickelt, ein vielseitiges, aber einfach zu.
Programmieren mit JAVA
Vortrag - Kenny Schlör Applets Einführung in die Appletprogrammierung.
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
1 Animation (Doublepuffering) Vorlesung: Datenverarbeitung Grundlagen 3 Fachbereich II - Mathematik Rolf Heitzenröder.
DVG1 - Applets1 Applets. DVG1 - Applets2 Die Klasse Applet n Applets sind Grafikobjekte, die unter Steuerung eines anderen Programms (z.B. eines Browsers,
DVG A bstract W indow T oolkit. DVG Als standardisierte portable Grafikschnittstelle existiert in JAVA das Package AWT - Abstract Window.
07-GraphischeObjekte Graphische Objekte in EMMA301Paint.
DVG Klassen und Objekte
SWING DVG Swing.
03 - Paint Das Zeichenprogramm EMMA Paint2 Aufgabenstellung Entwicklung eines ausschließlich in JAVA programmierten Graphikprogrammes. Vergleichsprodukte:
FH-Hof Java2D - Grundlagen Richard Göbel. FH-Hof Java2D - Funktionen Java2D unterstützt: das Zeichnen von Grafiken die Darstellung von Texten die Darstellung.
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 7 Sitzung 7: User Interfaces in Java.
AWT und JFC Abstract Windowing Toolkit
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 3 Folie 2 Layout (1) Zur Anordnung der Steuerelemente.
Java ohne Kara. Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen.
Applets Java für’s Web.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Java: Programmierung grafischer Oberflächen
IT2 – WS 2005/20061Oct 10, 2005 Externes Verhalten – Quelltext (source code) Durch Aufrufe der Konstruktoren und Methoden kann das externe Verhalten (=die.
CuP - Java Elfte Vorlesung Montag, 11. November 2002.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 8 Folie 2 Commands (1) s.a.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Programmierpraktikum Java SS 2005
Java-AG Benutzeroberflächen Juni 2001 Michael Haas.
Wilfried Imrich CuP - Java Erste Vorlesung Entspricht ungefähr Kapitel 1.1 des Skriptums Wilfried Imrich Montanuniversität Leoben Freitag, 4. Oktober 2002.
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
Java-Kurs Übung Benutzeroberflächen und Graphik
Java-Kurs Übung Benutzeroberflächen und Graphik Frames (Fenster)
Datenbanken im Web 1.
Java-Applets und URLs APP Philip Graf, Andreas Bößl.
Computergrafik-Praktikum Abschlusspräsentation Sierpinski Sarah Voß und Lars Jung Johann Wolfgang von Goethe Universität Frankfurt am Main Institut für.
Java-Kurs Übung Besprechung der Hausaufgabe Vererbung
Java-Kurs Übung Benutzeroberflächen und Graphik Besprechung der Hausaufgabe Applets Interaktive Eingabe und Darstellung mehrerer Polygonen.
Java-Kurs Übung Besprechung der Hausaufgabe Vererbung
Einführung in die Programmierung mit Java
Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13.
IT2 – WS 2005/20061Nov 14, 2005 Visibility  public: Sichtbar in allen Paketen  protected: Sichtbar innerhalb des Pakets und in den Unterklassen  (default,
Java Server Pages Technologie zur Erzeugung dynamischer Webseiten basierend auf Java-Servlets Blockseminar Wintersemester 2001/2002Jochen Pfeiffer Seite.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Thomas H. Kolbe Einführung in die Programmierung mit Java 9. Vorlesung WS 2001/2002.
Java-Kurs Übung Benutzeroberflächen und Graphik Besprechung der Hausaufgabe Applets Interaktive Eingabe und Darstellung mehrerer Polygonen.
Objektorientierte Programmierung (OOP)
, Dr. Wolfram Amme, Softwareentwicklung in Java, FSU Jena, WS 2005/06 1 Beispiel class SpreadSheet { int cellA1, cellA2, cellA3; synchronized.
GUI Programmierung in Java Branimir Djordjevic. GUI - Wichtige Begriffe -  Die Swing-Bibliothek in Java stellt zum Beispiel die folgenden Windows zur.
, Dr. Wolfram Amme, Softwareentwicklung in Java, FSU Jena, SS Synchronisation mit Monitoren Threads können in Java parallel ablaufen, oft.
Vererbung in Java. public abstract class Form { protected int breite; protected int hoehe; protected String farbe; /** * Erzeuge eine Form der Breite.
Abstract Windowing Toolkit
Abstract Windowing Toolkit
Java-Kurs Übung Grafik in Java - das Abstract Windowing Toolkit
Java-Kurs Übung Klassen und Objekte: Vererbung (Fortsetzung)
Programmiermethodik Übung 7
 Präsentation transkript:

Einführung in die OOP in Java Johann Wolfgang Goethe-Universität Professur für Graphische Datenverarbeitung Fachbereich Informatik und Mathematik Prof. Dr. Detlef Krömker Einführung in die OOP in Java WS 07/08 Ashraf Abu Baker baker@gdv.cs.uni-frankfurt.de Java-Intensivkurs WS07/08 Folie 1

Applets Applet: Java-fähiger Browser? Java-Programm Eingebettet in einer HTML-Seite Ausführung von einem Java-fähigen Web-Browser oder sog. AppletViewer Java-fähiger Browser? Abgespeckte Version der JVM Als Plug-In für den Browser installiert Java-Intensivkurs WS07/08 Folie 2

Applets HTML-Seite und das Applet befinden sich auf einem Web-Server Java-Intensivkurs WS07/08 Folie 3

Applets Applets sind Unterklasse von Lebensdauer einer Applikation javax.swing.JApplet java.applet.Applet (Oberklasse von JApplet) Lebensdauer einer Applikation Endet mit der Beendigung der main-Methode Applets haben einen anderen Lebenszyklus Bestimmt durch die Methoden init(), start(), stop() und destroy() Java-Intensivkurs WS07/08 Folie 4

Applets init() start() Aufruf: Soll so überschrieben: genau einmal unmittelbar nach Aufruf des Konstruktors Soll so überschrieben: Instanzvariablen initialisieren Objekte erzeugen Bilder und Schriften laden Parameter einlesen start() unmittelbar nach dem Aufruf von init() immer wieder, wenn das Applet wieder sichtbar wird Java-Intensivkurs WS07/08 Folie 5

Applets stop() destroy() Aufruf: Soll so überschrieben werden: Benutzer verlässt die HTML-Seite des Applets und besucht eine andere Seiten Soll so überschrieben werden: stoppt gestartete Animationen, Music, Threads usw. Um die CPU nicht unnötig zu belasten destroy() Aufruf nur einmal: wenn der Benutzer das Browser-Fenster schließt Soll Aufräumarbeiten vornehmen Java-Intensivkurs WS07/08 Folie 6

Applets Ein Applet wird während seinem Lebensdauer: 1 x geladen, instanziiert und initialisiert (init()) 1 x oder mehrere Male gestartet (start()) oder gestoppt (Stopp()) 1 x „vernichtet“ (destroy()) Alle genannten Methoden sollen entsprechend überschrieben werden Java-Intensivkurs WS07/08 Folie 7

Applets Sicherheit Kein Zugriff auf das lokale Dateisystem Kein Start von externen Programmen Kein Aufbau einer Netz-Verbindung z. B. zum Server, vom dem Das Applet gestartet wurde Die Kontrolle über die Sicherheit eines Applets ist im Browser implementiert Java-Intensivkurs WS07/08 Folie 8

Applets Beispiel Laufschriftapplet Java-Intensivkurs WS07/08 Folie 9

Applets Einbettung in HTML <html> <head> <title>Mein erstes Applet</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <h1>Ein Laufschriftapplet</h1> <applet code="applets.TickerApplett.class" width="400" height="200" > <param name="text" value="Das ist mein erstes Applet!"> </applet></p> </body> </html> Java-Intensivkurs WS07/08 Folie 10

Applets Java-Programm sowohl als Applet als auch als Applikation implementieren: Hauptklasse des Programms muss eine Unterklasse von Applet bzw. JApplet sein Die eine main-Methode enthalten main-Methode instanziiert die Klasse main-Methode ruft init() und start() auf Java-Intensivkurs WS07/08 Folie 11

Java2D paint(Graphics g) repaint() Ruft update() auf Aufruf: Die grafische Oberfläche einer Applikation muss neu gezeichnet werden: Fenster wird verschoben Fenster wird teilweise überdeckt repaint()  Die grafische Oberfläche einer Applikation soll neu gezeichnet werden: Ruft update() auf update(Graphics g)  Löscht den Zeichenbereich der Anwendung Ruft paint() auf Java-Intensivkurs WS07/08 Folie 12

Java2D java.awt.Graphics -Klasse: Graphics ist eine abstrakte Klasse Methoden zum Zeichnen von Graphikprimitiven: Linien, Kreisen und Ellipsen, Bögen, Rechtecke, Polygonen und Bildern Methoden Text-Darstellung und -formatierung Java-Intensivkurs WS07/08 Folie 13

Java2D Koordinatensystem Java-Intensivkurs WS07/08 Folie 14

Java2D Textformatierung und Darstellung Java-Intensivkurs WS07/08 Folie 15

Java2D Zeichnung von graphischen Primitiven Java-Intensivkurs WS07/08 Folie 16

AWT / Swing Swing/ AWT (Abstract Window Toolkit) AWT Swing API zur Erstellung von graphischen Benuzeroberflächen (GUI) AWT Stark abhängig vom darunterliegenden System Veraltet Swing Erweiterung des AWT und plattformunabhängig Java-Intensivkurs WS07/08 Folie 17

AWT/Swing Beide bieten Komponenten: Beide bieten Container: Buttons, Textfelder, Scrollbars, CheckBoxes, RadioButton Beide bieten Container: Frames, Dialogfelder und Panels Container dienen der Aufnahme von Komponenten Java-Intensivkurs WS07/08 Folie 18

AWT/Swing Java-Intensivkurs WS07/08 Folie 19

LayoutManager LayoutManager: BorderLayout Ausrichtung von Komponenten innerhalb von Containern BorderLayout Java-Intensivkurs WS07/08 Folie 20

LayoutManager GridLayout Java-Intensivkurs WS07/08 Folie 21

LayoutManager FlowLayout Java-Intensivkurs WS07/08 Folie 22