Graphische Nutzerschnittstellen
|
|
- Richard Lenz
- vor 6 Jahren
- Abrufe
Transkript
1 Graphische Nutzerschnittstellen Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik Raum Tel / Inhalt 1. Einführung, Literatur, Begriffe 2. Architektur eines Fenstersystems 3. Java-Dialog (Dialog/SDI/MDI) 4. Grafik in Java 5. Benutzeroberfläche (Layout, Dialog, RDI, GUI-Elemente) 6. Design Pattern (Framework, Mehrschicht Anwendung) 7. Testroutinen (JUnit) 8. JDBC (Datenbankanbindung) 9. Threads 1
2 Benutzeroberflächen: Zeichnen in Java Benötigte Elemente: Linien (Farbe, Strichdicke, Strichart) Zeichenblatt (JFrame, JPanel, Canvas) 3 Benutzeroberflächen: Zeichnen in Java Methode Beschreibung clearrect() Löscht ein Gebiet der Zeichenfläche copyarea() kopiert ein Rechteck innerhalb der Zeichenfläche drawarc() zeichnet einen Bogen drawline() zeichnet eine Gerade drawoval() zeichnet eine Ellipse drawpolygon() zeichnet ein Polygon (Array) drawrect() zeichnet ein Rechteck drawroundrect() zeichnet ein Rechteck mit abgerundeten Ecken fillarc() füllt einen Bogen mit Farbe filloval() füllt ein Oval mit Farbe fillpolygon() füllt ein Polygon mit Farbe fillrect() füllt ein Rechteck mit Farbe getcolor() gibt die aktuelle Zeichnungsfarbe aus getfont() gibt den aktuellen Zeichensatz aus getfontmetrics() gibt die aktuellen Parameter des Zeichensatzes aus setcolor() legt die Zeichnungsfarbe fest setfont() setzt den aktuellen Zeichensatz drawstring( ) HexEditor drawchars() Array von Char s 4 2
3 Zeichnen in Java: Linien Linien zeichnen int x = 80; for (int i=0; i<60; i++) g.drawline(x,40,x,100); x += 1+ 3*Math.random() Die Variable g bezeichnet man auch als Grafikkontext Line-rect-circle\Line1 5 Zeichnen in Java: Linien import java.awt.*; import javax.swing.jframe; public class Linie01 extends JFrame public Linie01() setdefaultcloseoperation( ); // construktor int x = 80; for (int i=0; i<60; i++) g.drawline(x,40,x,100); x += 4+ 6*Math.random(); // paint public static void main(string[] args) Linie01 f ; f = new Linie01(); f.setsize(500, 300); f.settitle("1. Grafikbeispiel"); f.setvisible(true); // main // class Line01 6 3
4 Zeichnen in Java: Linien import java.awt.*; import javax.swing.jframe; public class Linie01 extends JFrame public Linie01() setdefaultcloseoperation( ); this.getcontentpane().add( new CCanvas(), BorderLayout.CENTER ); // construktor Update: canvas.update( canvas.getgraphics() ); public static void main(string[] args) Linie01 f ; f = new Linie01(); f.setsize(500, 300); f.settitle("1. Grafikbeispiel"); f.setvisible(true); // main // class class CCanvas extends Canvas int x = 80; for (int i=0; i<60; i++) g.drawline(x,40,x,100); x += 1+ 3*Math.random(); // paint // CCanvas Line01 7 Zeichnen in Java: Linien class CCanvas extends Canvas private int count=0; count=count+1; System.out.println(count+". zeichnen"); g.setcolor(color.white); g.fillrect(0,0, getwidth(), getheight() ); g.setcolor(color.red); int width,height; width = this.getwidth(); height = this.getheight(); g.drawline(0,0,width,height); Line02 8 4
5 Zeichnen in Java: Linien Linien zeichnen Links /oben :100,100 Rechts / unten:600,400 mitte / oben: 350, 50 Vorlesungsaufgabe Line03 9 Vorlesungsaufgabe: g.drawline(100,100, 600,100); // waagerecht oben g.drawline(600,100, 600,400); // senkrecht rechts g.drawline(100,400, 600,400); // waagerecht unten g.drawline(100,100, 100,400); // senkrecht links g.drawline(100,100, 600,400); // links oben nach rechts unten g.drawline(100,400, 600,100); // links unten nach rechts oben g.drawline(100,100, 350, 50); // links oben nach rechts unten g.drawline(350, 50, 600,100); // links unten nach rechts oben Line2 10 5
6 Sinusfunktionen: double f(double x) return (Math.cos(x/5) + Math.sin(x/7) + 2) * getsize().height / 4; for (int x = 0 ; x < getsize().width ; x++) g.drawline(x, f(x), x + 1, f(x + 1)); Line04 11 class CCanvas extends Canvas double f(double x) return (Math.cos(x/5) + Math.sin(x/7) + 2) * getsize().height / 4; g.setcolor(color.white); g.fillrect(25,25, getwidth()-50, getheight()-50 ); g.setcolor(color.red); for (int x = 0 ; x < getsize().width ; x++) g.drawline(x, (int) f(x), x + 1, (int) f(x + 1)); Line
7 Sinusfunktionen: double f(double x) return ( Math.sin(x/7) + 2) * getsize().height / 4; Color c; Font f; for (int x = 0 ; x < getsize().width ; x++) g.drawline(x, (int)f(x), x + 1, (int)f(x + 1)); c = g.getcolor(); f = g.getfont(); Line05 13 Gedämpfte Sinusschwingung: double f(double x) return ( Math.sin(x/7)*Math.exp(-x*0.002) + 2) * getsize().height / 4; Color c; Font f; for (int x = 0 ; x < getsize().width ; x++) g.drawline(x, (int)f(x), x + 1, (int)f(x + 1)); c = g.getcolor(); f = g.getfont(); Line6 14 7
8 Zeichnen in Java: Rechteck Aufgabe: Zeichnen von 10 Rechtecken Rect1 15 Zeichnen in Java: Rechteck int x, y; // Mittelpunkt int w, h; // Breite Höhe for (int i=0; i<10; i++) x = (int) ( 400*Math.random() ); y = (int) ( 200*Math.random() ); w = (int) ( 400*Math.random() ); h = (int) ( 200*Math.random() ); g.drawrect(x,y,w,h); // Links Oben // Links Oben // Width // Height Rect1 16 8
9 Zeichnen in Java: Rechteck Recchteck Koordinaten x0 = 200; y0 = 200; diffx = 50; diffy = 25; diff wird nach jedem Zeichen um 10 Punkte erhöht Vorlesungsaufgabe Rect2 17 Zeichnen in Java: Rechtecke zeichnen diff diff Rect2 18 9
10 Vorlesungsaufgabe: int x0, y0; // Mittelpunkt int x, y; // Mittelpunkt links / oben int w, h; // Breite Höhe int diff; x0 = 200; y0 = 200; diff = 50; g.setcolor(color.red); g.drawline(x0-200,y0,x0+200,y0); g.drawline(x0,y0-200,x0,y0+200); g.setcolor(color.blue); for (int i=0; i<10; i++) x = x0 - diff; y = y0 - (diff >> 1); h = diff; w = diff << 1; g.drawrect(x,y,w,h); diff += 10; // for // SHR // SHL Rect2 19 Zeichnen in Java: Kreis int x, y; // Mittelpunkt int w, h; // Breite Höhe x = 80; y = 80; for (int i=0; i<10; i++) w = (int) ( 400*Math.random() ); h = w; g.drawoval(x,y,w,h); Circle
11 Zeichnen in Java: Kreis int x0, y0; // Mittelpunkt int d; // Durchmesser int r; // Radius x0 = 300; y0 = 300; for (int i=0; i<10; i++) // Verschieben d = (int) ( 400*Math.random() ); r = d >> 1; g.drawoval(x0-r,y0-r,d,d); Circle2 21 Zeichnen in Java: Kreis int x, y; // Mittelpunkt int d; // Durchmesser int r; // Radius x = 300; y = 300; for (int i=0; i<10; i++) // Verschieben d = (int) ( 400*Math.random() ); r = d >> 1; g.drawoval(x-r,y-r,d,d); Circle
12 Zeichnen mit eine eigenen Klasse Ableiten von Canvas oder JPanel Implementieren der paint-methode this.paintcomponents(g); g.setcolor(color.white); g.fillrect(0,0, this.getwidth(), this.getheight()); g.setcolor( Color.blue ); g.drawline(10,10, getwidth()-10,getheight()-10) ; // paint 23 Methode drawstring drawstring(string s, int x, int y); Abmessungen Klasse FontMetrics: this.paintcomponents(g); Beispiel: Font f1 = new Font("Courier New", Font.PLAIN, size); FontMetrics fontmetrics = g.getfontmetrics(f1); int rowheight = fontmetrics.getheight(); int margin = fontmetrics.stringwidth("xxxx"); 24 12
13 Klasse Font Font[] ff = java.awt.graphicsenvironment.getallfonts(); 25 Font myfont=new Font("Arial", Font.ITALIC Font.PLAIN, 18); String s="abcghi"; // holen der Daten für den Font und des Strings LineMetrics lm = myfont.getlinemetrics( s, new FontRenderContext( new AffineTransform(), true, //antialiased true //use fractional metrics? ) ); // Abmessungen für ausgeben: System.out.println("String: "+s); System.out.println("Schriftart: "+myfont.getfontname()); System.out.println("Schriftgröße: "+myfont.getsize()); System.out.println(" "); System.out.println("Ascent: "+lm.getascent()); System.out.println("+Descent: "+lm.getdescent()); System.out.println("+Leading: "+lm.getleading()); System.out.println("=Height: "+lm.getheight()); 26 13
14 AttributedCharacterIterator (String02) Aliasing an: Graphics2D g2d=(graphics2d)g; g2d.setrenderinghint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON ); 27 AttributedCharacterIterator (String03) Ausgabe mit Attributen addattribute( AttributedCharacterIterator.Attribute attribute, Object value, // z. B. 1) int beginindex, int endindex ) 1) GradientPaint TextAttribute.UNDERLINE_LOW_DASHED TextAttribute.SWAP_COLORS_ON 28 14
15 AttributedCharacterIterator (String03) 29 Font f1 = new Font("Arial", Font.PLAIN, 36); Font f2 = new Font("Times New Roman", Font.PLAIN, 60); AttributedString as = new AttributedString("Informatik ist toll, aber auch Mathematik oder Sport"); as.addattribute( TextAttribute.FONT, f1 ); as.addattribute( TextAttribute.FOREGROUND, new GradientPaint( 0,0, Color.red, 0,10, Color.white,true ), 15,19); ( as.getiterator(), 30,100 ); 30 15
16 as.addattribute( TextAttribute.FONT, f2, 0, 4 ); as.addattribute( TextAttribute.FOREGROUND, new GradientPaint( 0,0, Color.blue, 10,0, Color.green,true ), 26,31); // "auch" setzen as.addattribute( TextAttribute.FONT, f2, 26, 31 ); as.addattribute( TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_LOW_DASHED, 31,41 ); as.addattribute( TextAttribute.SWAP_COLORS, TextAttribute.SWAP_COLORS_ON, 22,27 ); g2d.drawstring( as.getiterator(), 30,100 ); 31 Dialog_2D: Strichstärken und Strichmuster int x = 80; Rectangle r = new Rectangle(); g.getclipbounds(r); Graphics2D g2 = (Graphics2D) g; float [] dashs = 40.0f, 5.0f; // Länge Strich, Pause // BasicStroke(float width, int cap, int join, float miterlimit, // float[] dash, float dash_phase) // 1.0f = miterlimit g.setcolor(color.white); g.fillrect(0,0, getwidth(), getheight() ); g2.setstroke( new BasicStroke(LineWidth, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1.0f, dashs, 0.0f ) ); g.setcolor(color.red); for (int i=10; i< r.getwidth()-10; i++) x = (int) (6.0*Math.random()); if (x==2) g.drawline(i,20,i,(int) r.getheight()-10 ); // for // paint 32 16
17 33 Beispiele in Grafik2D: nikolaus1, nikolaus2, nikolaus
18 Dialog_Area_2D Dialog_Line_2D 35 Dialog_Picture2_2D 36 18
19 Dialog_Transform1_2D: Transformation, Skalierung und Scherung 37 MemoryMonitor 38 19
Zeichnen und animieren
Zeichnen und animieren Grundlage bildet wieder die Klasse Graphics Ein Objekt der Klasse Graphics wird immer der paint Methode übergeben public void paint (Graphics g) Auch außerhalb von paint kann Graphics
MehrEreignisse Graphikausgabe in AWT und Swing
Swing Programierung Ereignisse Graphikausgabe in AWT und Swing Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Ereignisse Kommunikation mit anderen Beans Zustandsänderung wird allen Interessierten
MehrProgrammieren II. Zeichnen in Swing-Komponenten. Heusch 18 Ratz Institut für Angewandte Informatik
Programmieren II Zeichnen in Swing-Komponenten Heusch 18 Ratz 16.1 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Zeichnen in Swing-Komponenten (1) Eine Swing-Komponente kann nicht
MehrKonzepte objektorientierter Programmierung
Konzepte objektorientierter Programmierung Objekte Klassen Nachrichten Kapselung Einführung Vererbung heute! Konzepte objektorientierter Programmierung Was ist ein Objekt? Was ist eine Klasse? Was sind
MehrDr. Monika Meiler. Inhalt
Inhalt 12 Grafische Benutzerschnittstellen... 12-2 12.1 Komponenten... 12-2 12.1.1 AWT und Swing... 12-2 12.1.2 Beispiel Hallo Welt!... 12-3 12.2 Ereignisverarbeitung... 12-6 12.3 Grafik... 12-10 12.3.1
MehrGrafikausgabe mit dem Abstract- Windowing-Toolkit. Eine Einführung
Grafikausgabe mit dem Abstract- Windowing-Toolkit Eine Einführung Inhalt Einführung Grundlegende Eigenschaften des Abstract-Windowing- Toolkit (AWT) Grundlagen Grafikausgabe Linien zeichnen Rechtecke zeichnen
MehrKapitel X - Zeichnen mit Java2D
Kapitel X - Zeichnen mit Java2D SWT I Sommersemester 2010 Walter F. Tichy, Andreas Höfer, Korbinian Molitorisz IPD Tichy, Fakultät für Informatik KIT die Kooperation von Forschungszentrum Karlsruhe GmbH
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Kapitel X Zeichnen mit Java2D SWT I Sommersemester 2009 Prof. Walter F. Tichy David Meder Literatur Informationen zu Java2D finden Sie in
Mehr<a href="basic.java">the source.</a>
Start-Tags von Elementen können Attribute enthalten, die Zusatz-Informationen für die Darstellung des Elements enthalten. Der Wert eines Attributs kann(u.a.) ein String sein. Das Attribut href des Elements
MehrProgrammieren II. Java-Applets. Heusch 17 Ratz 4. www.kit.edu. Institut für Angewandte Informatik
Programmieren II Java-Applets Heusch 17 Ratz 4 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Was sind Java-Applets? Minianwendung
MehrGrafikprogrammierung mit Java Teil 1/2
Grafikprogrammierung mit Java Teil 1/2 Martin Tischmann 15. Juni 2009 Inhaltsverzeichnis Das Abstract Windowing Toolkit Anlegen eines Fensters Die Methode paint Das grafische Koordinatensystem Schließen
MehrGraphische Benutzungsoberflächen
Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen
MehrPlotten von Kreisen ( nach Jack Bresenham ) (C) Ac bis
Plotten von Kreisen ( nach Jack Bresenham ) (C) Ac 3-1990 bis 2-2017 Wie zeichnet der Computer Kreise? Natürlich mithilfe von Pixels, picture elements, also kleinen Bildpunkten. Die beste Approximation
MehrBeispiele für Ausdrücke. Der imperative Kern. Der imperative Kern. Imperativer Kern - Kontrollstrukturen. Deklarationen mit Initialisierung
Beispiele für Ausdrücke Der imperative Kern Deklarationen mit Initialisierung Variablendeklarationen int i = 10; int j = 15; Beispiele für Ausdrücke i+j i++ i & j i j [] [static]
Mehr24. Textausgabe in Java. Vorgetragen von Rüdiger Heidenreich
24. Textausgabe in Java Vorgetragen von Rüdiger Heidenreich Übersicht Ausgabe Funktionen Unterschiedliche Schriftarten Eigenschaften von Schriftarten Ausgabefunktionen Methoden aus der Klasse Graphics
Mehr// compiliert, aber Programmabbruch zur Laufzeit: einesuppe = ((EßbarerPilz)einPilz).kochen();
Typecast class Pilz void suchen() void sammeln() class EßbarerPilz extends Pilz Suppe kochen() Suppe einesuppe = new Suppe(); return einesuppe; class GiftPilz extends Pilz void entsorgen() class Suppe
MehrJAVA für Nichtinformatiker - Probeklausur -
JAVA für Nichtinformatiker - Probeklausur - Die folgenden Aufgaben sollten in 150 Minuten bearbeitet werden. Aufgabe 1: Erläutere kurz die Bedeutung der folgenden Java-Schlüsselwörter und gib Sie jeweils
MehrJava - AWT Basispraktikum SystemArchitektur WS 2008/ Atanas Dimitrov
Java - AWT Basispraktikum SystemArchitektur WS 2008/2209 09.12.2008 Atanas Dimitrov 1 Was besprechen wir heute: AWT Klassen Die Klasse Graphics AWT Methoden Die Klasse ToolKit Ausgabe von Bilder Die Klasse
MehrGrafik-Programmierung
Grafik-Programmierung In dieser Übung beschäftigen wir uns zunächst mit elementaren Grundlagen der Grafikprogrammierung. In der nächsten Übung werden wir dies auf Spiele anwenden. Aufgabe 1: Einfache Grafik:
MehrLösungen. 1. Aufgabe. // ActionExample.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.
Lösungen 1. Aufgabe // ActionExample.java import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class ActionExample extends JFrame int counter = 1; JLabel counterlabel; public
MehrRechnerorganisation Studiengang PSC
Rechnerorganisation Studiengang PSC Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 Lernziele Überblick
MehrAufgabe 5.1 (Laboraufgabe, Nocheinmal ein wenig Graphik)
Übungen zu Objektorientierte Programmierung in Java PD Dr. Wolfgang Goerigk Sommersemester 2009 Musterlösungen Serie 5 Aufgabe 5.1 (Laboraufgabe, Nocheinmal ein wenig Graphik) Die Klasse java.awt.container
MehrTutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane
Hochschule Harz Programmierung2 Tutorial 04: FB Automatisierung und Informatik Dipl.-Inf., Dipl.-Ing. (FH) M. Wilhelm Programmierung 2 für MI / WI Thema: Swing, JSplitPane und I/O Versuchsziele Kenntnisse
MehrApplets und HTML. Martin Wirsing. Exkurs: Noch einmal Object. in Zusammenarbeit mit Matthias Hölzl, Nora Koch
Applets und HTML Martin Wirsing in Zusammenarbeit mit Matthias Hölzl, Nora Koch 12/03 Exkurs: Noch einmal Object 2 Achtung: Die Methode equals der Klasse Object kann unterschiedlich implementiert werden:
MehrGUI Programmierung in Java
vs und niemals mischen! Daher muss man sich für eine Klasse entscheiden 1 (Abstract Window Toolkit) schwergewichtige Alle Elemente werden vom Betriebssytem gemalt sehen aus wie alle anderen Programme auf
MehrObjektorientierte Programmierung Studiengang Medieninformatik
Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 1 15.03.2017 Objektorientierte Programmierung (Studiengang Medieninformatik) Form: Prüfung:
MehrGegeben ist ein Path-Objekt mit folgender Beschreibung des Hauses vom Nikolaus:
Lösungen 1. Aufgabe Gegeben ist ein Path-Objekt mit folgender Beschreibung des Hauses vom Nikolaus: 1. Implementiere die paint()-methode im Rahmen eines Applets. Führe das Applet aus und zeige über das
MehrDHBW Karlsruhe, Angewandte Informatik Programmieren in JAVA https://www.iai.kit.edu/~javavorlesung W. Geiger, T. Schlachter, C. Schmitt, W.
Bereich: Grafische Benutzeroberflächen (UI), Events (1) Währungsumrechner (2) Package: de.dhbwka.java.exercise.ui.event Musterlösung Klasse: CurrencyCalculator package de.dhbwka.java.exercise.ui.event;
MehrProgrammieren II. Abstrakte Klassen, Interfaces Heusch 13.8, 13.9 Ratz Institut für Angewandte Informatik
Programmieren II Abstrakte Klassen, Interfaces Heusch 13.8, 13.9 Ratz 9.6 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Abstrakte Klassen: Motivation Prinzip der Vererbung: Aus
MehrDistributed Computing Group
JAVA TUTORIAL Distributed Computing Group Vernetzte Systeme - SS 06 Übersicht Warum Java? Interoperabilität grosse und gut dokumentierte Library weit verbreitet Syntax sehr nahe an C Erfahrung: Java wird
MehrJava - Programmierung - Objektorientierte Programmierung 1
Java - Programmierung - Objektorientierte Programmierung 1 // Klassen und Objekte public class KlaObj public static void main(string args []) Klasse1 a; a = new Klasse1("heute", 47); Klasse1 b = new Klasse1
MehrHumboldt-Universität zu Berlin Wintersemester 2010/11 Institut für Informatik Grundlagen der Programmierung. 6. Übungsblatt
Humboldt-Universität zu Berlin Wintersemester 2010/11 Institut für Informatik Grundlagen der Programmierung Prof. Redlich 6. Übungsblatt 21 (+4) Punkte Abgabe bis 31.01.2010 (08:00 Uhr) über GOYA Aufgabe
MehrProgrammieren 2 Selbststudium Semesterwoche 4
Programmieren 2 Selbststudium Semesterwoche 4 Kapitel 11.1, 11.2 und 11.3 1. Das Konzept "Interface" ist wichtig und ist uns schon mehrfach begegnet. In welchen Zusammenhängen hatten wir es schon mit "Interfaces"
MehrKlausur Software-Entwicklung März 01
Aufgabe 1: minimaler Punktabstand ( 2+5 Punkte ) Matrikelnr : In einem Array punkte sind Koordinaten von Punkten gespeichert. Ergänzen Sie in der Klasse Punkt eine Klassen-Methode (=static Funktion) punktabstand,
MehrGrafische Nutzerschnittstellen
Grafische Nutzerschnittstellen Dipl.-Inf. Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 FB Automatisierung und Informatik: Graf.
MehrAb jetzt: Java ohne Kara
Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen JavaKara -> Java Ablauf in JavaKara: 1. Programm schreiben 2. Kompilieren 3. Programm starten Ablauf in Java
Mehr3. Das Java-AWT (I) Elementares Zeichnen
3. Das Java-AWT (I) Elementares Zeichnen OO-Graphics in Java Java AWT(I) 55 Das AWT von Java Abstract: allgemeiner, plattformunabhängiger Ansatz Window: Umgang mit Fenstersystemen Toolkit: sehr grosse
MehrAnweisungen zur Ablaufsteuerung
Anweisungen zur Ablaufsteuerung if-else switch while do-while for Ausdrücke Ein Ausdruck ist eine Folge von Variablen, Operatoren und Methodenaufrufen, der zu einem einzelnen Wert ausgewertet wird. Operanden
MehrProgrammieren II. Abstrakte Klassen, Interfaces Heusch 13.8, 13.9 Ratz Institut für Angewandte Informatik
Programmieren II Abstrakte Klassen, Interfaces Heusch 13.8, 13.9 Ratz 9.6 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Abstrakte Klassen: Motivation Grundidee abstrakter Klassen:
MehrGrundlagen der Objektorientierung
Grundlagen der Objektorientierung Klassen, Attribute, Methoden Kapselung und Konstruktoren Vererbung Packages Interfaces und Adapterklassen 04.06.2008 Marcel Wieczorek 14 Klassen, Attribute, Methoden package
MehrTest-Klausuraufgaben Softwaretechnik Fachbereich BW, für WINFO
Test-Klausuraufgaben Softwaretechnik Fachbereich BW, für WINFO Dipl.-Ing. Klaus Knopper 21.12.2006 Hinweis: Bitte schreiben Sie auf das Deckblatt und auf jede Seite Ihren Namen und Ihre Matrikelnummer,
MehrTeil 1: Grundeigenschaften von Rechnern und Software
Blatt Nummer: 1 Teil 1: Grundeigenschaften von Rechnern und Software Aufgabe 1.1 [2P] Welcher fundamentale Unterschied besteht zwischen dem Zweck eines Computer von dem Zweck anderer Maschinen (etwa einer
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
Mehrimport JavaKaraProgram; public class Quadrat extends JavaKaraProgram { // Anfang von Quadrat void turnaround() { kara.turnleft(); kara.
Informatik 11: Einführung in Java Kara legt Muster!(Lsg.) Gierhardt Aufgaben: 1. KARA soll ein mit Kleeblättern gefülltes Quadrat mit variabler Seitenlänge ablegen. Der Methodenaufruf quadratzeichnen(5)
MehrMethoden und Klassen. Silke Trißl Wissensmanagement in der Bioinformatik
Methoden und Klassen Silke Trißl Wissensmanagement in der Bioinformatik Wiederholung Jede Applikation braucht eine Klasse mit einer main-methode Eintrittspunkt in das Programm Die main-methode wird public
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen
1 Kapitel 7 Ziele 2 (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen Benutzung von Vererbung zur Erstellung individueller GUI-Klassen durch Erweiterung
MehrAufgabe Malen zum Software-Engineering. Karl Friedrich Gebhardt
Aufgabe Malen zum Software-Engineering Karl Friedrich Gebhardt 8. Februar 2017 c 2010 Karl Friedrich Gebhardt Auflage vom 8. Februar 2017 Aufgabe Das folgende Dokument enthält eine Reihe von aufeinander
MehrSilke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode
Methoden und Klassen Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik Wiederholung Jede Applikation braucht eine Klasse mit einer main-methode Eintrittspunkt in das Programm Die main-methode
MehrEinstieg in die Informatik mit Java
1 / 18 Einstieg in die Informatik mit Java Applets Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 18 1 Einführung 2 Sicherheits-Maßnahmen 3 Ereignisgesteuerte Programmierung
MehrGrundlagen in C# und.net
Grundlagen in C# und.net Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 FB Automatisierung und Informatik:
MehrSilke Trißl Wissensmanagement in der Bioinformatik. Objektorientierte Programmierung (OOP) Vorstellung wie in der realen Welt: Farbe Hubraum Tank...
Methoden und Klassen Silke Trißl Wissensmanagement in der Bioinformatik Objektorientierte Programmierung (OOP) Vorstellung wie in der realen Welt: hat Farbe Hubraum Tank kann man Gas geben Bremsen Hoch
MehrObjektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer
Java Kurs Objektorientierung II & die Java Klassenbibliothek Kristian Bergmann und Arthur Lochstampfer Vergleich class Apfel { String farbe; int gewicht; String geerntetin; class Erdbeere { String farbe;
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 7. Grafische Benutzeroberflächen 1
Kapitel 7 Grafische Benutzeroberflächen Grafische Benutzeroberflächen 1 Ziele Grafische Benutzeroberflächen (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen.
MehrCoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.
CoMa 04 Java II Paul Boeck Humboldt Universität zu Berlin Institut für Mathematik 7. Mai 2013 Paul Boeck CoMa 04 7. Mai 2013 1 / 13 Verzweigungen Wenn-Dann Beziehungen if (BEDINGUNG) { else if (BEDINGUNG2)
MehrJava Einführung Abstrakte Klassen und Interfaces
Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer
MehrJAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)
JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert
MehrUniversität Paderborn Prof. Dr. Stefan Böttcher. Kapitel 3: Java Applets
Kapitel 3: Java Applets 1 Was sind Applets? kleine in Fenstern ausführbare Programme typisch: Aufruf im Browserfenster als Teil einer HTML-Seite Anfang des umgebenden HTML-Textes
MehrInhaltsverzeichnis. Rechenmaschinen - EINFÜHRUNG IN DIE OOP MIT JAVA PI - KAPITEL 1: GRAFIK UND GUIS - V SEITE 1 VON 10 -
- EINFÜHRUNG IN DIE OOP MIT JAVA PI - KAPITEL 1: GRAFIK UND GUIS - V. 0.0.06 - SEITE 1 VON - Inhaltsverzeichnis 3Grafiken, Threads und GUIs... 2 3.1Was sind Applets Theoretischer Hintergrund...2 3.1.1Kennzeichen
MehrCS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)
CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Graphische Benutzerschnittstellen I GUI erzeugen Seite 1 GUI GUI: Graphical User Interface Graphische Benutzeroberfläche Seite 2
Mehr1.2 Attribute und Methoden Aufbau einer Java-Klasse:
Aufbau einer Java-Klasse: public class Quadrat { int groesse; int xposition; String farbe; boolean istsichtbar; public void sichtbarmachen() { istsichtbar = true; public void horizontalbewegen(int distance){
Mehr1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte)
Praktische Informatik (Software) Vorlesung Softwareentwicklung 1 Prof. Dr. A. Ferscha Hauptklausur am 01. 02. 2001 Zuname Vorname Matr. Nr. Stud. Kennz. Sitzplatz HS / / / Punkte Note korr. Fügen Sie fehlende
MehrDer Ball kann angezeigt werden: anzeigen( ) {... } Der Ball kann z.b. seine Größe verändern: groesseaendern(int veraenderung) {... } usw.
Objekt-Orientierung Die ersten objektorientierten Sprachen wurden ab 1967 entwickelt (Simula, Smalltalk). Die Grundidee besteht darin, Objekte der realen Welt abzubilden. Java-Programme bestehen aus Klassen.
MehrÜbungsaufgaben Java. Vorlesung Cloud Computing SoSe 2009. Cloud Computing SoSe 2009 Dr. M.Kunze 1
Übungsaufgaben Java Vorlesung Cloud Computing SoSe 2009 Cloud Computing SoSe 2009 Dr. M.Kunze 1 Übung J1 Installieren Sie das Java Software-Entwicklungspaket JDK 6 Update 13 http://java.sun.com/javase/downloads/index.jsp
MehrMobile und Verteilte Datenbanken
Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2010/2011 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Java Remote Method Invocation (RMI) Realisierung
Mehr1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen
1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.2 Methoden, Unterprogramme und Parameter - 1 - 2. Methoden
MehrUniversität Augsburg, Institut für Informatik Sommersemester 2001 Prof. Dr. Martin Ester 08. Oktober Klausur II
Universität Augsburg, Institut für Informatik Sommersemester 2001 Prof. Dr. Martin Ester 08. Oktober 2001 Stefan Holland Informatik II Hinweise: Klausur II Verwenden Sie für Ihre Lösungen ausschließlich
MehrII. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. )
Technische Informatik für Ingenieure (TIfI) WS 2006/2007, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Rekursion Datenstrukturen Merge S ( split, s, merge ) Beispiel:
MehrSoftwareentwicklung Applets und Graphik
Mag. iur. Dr. techn. Michael Sonntag Softwareentwicklung Applets und Graphik E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm Institut für Informationsverarbeitung und
MehrKlausur zur Informatik A WS 2001/2002 Name: Korrektor: Punkte: a) Zeichnen Sie zu der nachstehenden Syntax in EBNF die passenden Syntaxdiagramme.
Aufgabe 1 a) Zeichnen Sie zu der nachstehenden Syntax in EBNF die passenden Syntaxdiagramme. Drei0 ::= 0 3 6 9 Drei1 ::= 1 4 7 Drei2 ::= 2 5 8 Drei ::= Drei0 Drei0 Drei1 Drei2 Drei2 Drei1 b) Gegeben sei
MehrJava Schulung (Java 2 Java Development Kit 5 / 6)
2. Grundlagen der Objektorientierung 2.1 Klassen, Attribute, Methoden Klassen Eine Klasse beschreibt als Bauplan Gemeinsamkeiten einer Menge von Objekten ist also ein Modell, auf dessen Basis Objekte erstellt
MehrInformatik II. Aufgabe 1: Image Viewer ImageViewer.java
Universität Augsburg, Institut für Informatik Sommersemester 2006 Prof. Dr. Werner Kießling 27. Juli 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 12 Aufgabe 1: Image Viewer ImageViewer.java Informatik
Mehr2. Methoden. n Generelles zum Aufruf von Methoden. n Parameterübergabemechanismen (call by value, call by reference)
2. Methoden n Generelles zum Aufruf von Methoden n Parameterübergabemechanismen (call by value, call by reference) n Speicherorganisation bei Methodenaufruf und Parameterübergabe (Laufzeitkeller) n vararg
MehrGrafische Benutzeroberflächen
Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Aufgabe Ein Benutzer soll zwei Zahlen in ein Programm
Mehr2. Unterprogramme und Methoden
2. Unterprogramme und Methoden Durch Methoden wird ausführbarer Code unter einem Namen zusammengefasst. Dieser Code kann unter Verwendung von sogenannten Parametern formuliert sein, denen später beim Aufruf
MehrVersuchsziele Kenntnisse in der Anwendung von: Sortieren mit Klassen Benutzung von generischen Klassen o Definition o Sortierung.
Hochschule Harz Programmierung1 Tutorial 11: FB Automatisierung und Informatik Dipl.-Inf. Dipl.-Ing. (FH) M. Wilhelm Programmierung 1 für MI / WI Thema: Sortieren und generische Klassen Versuchsziele Kenntnisse
MehrFunktionale und Objekt-Orientierte Programmierkonzepte
Funktionale und Objekt-Orientierte Programmierkonzepte Prof. Marc Fischlin, Wintersemester 15/16 Kapitel 17: GUI, Threads und verschachtelte Klassen 13. Oktober 2010 Dr.Marc Fischlin Kryptosicherheit 1
MehrTaxi-Simulation. Objektorientierte Analyse. Verb-Substantiv-Methode
Informatik Taxi-Simulation Seite 1 Taxi-Simulation Ein Taxiunternehmen untersucht gerade, ob es sein Einsatzgebiet in einen bisher nicht abgedeckten Teil der Stadt ausdehnen soll. Basierend auf den geschätzten
MehrJava - Programmierung - Prozedurale Programmierung 1
Java - Programmierung - Prozedurale Programmierung 1 // elementare Datentypen public class el_dt public static void main(string args []) byte b = 127; short s = 32767; int i = 2147483647; long l = 9223372036854775807L,
MehrProgrammieren in Java
17. Übung 1. Aufgabe Schreibe ein Programm, das eine Textdatei (z.b. *.java ) aus dem aktuellen Verzeichnis über eine TextArea auf ein Fenster des Bildschirms abbildet. Jede Zeile soll dabei durchnummeriert
MehrGUIs in Java und ihre Programmierung
GUIs in Java und ihre Programmierung Einführung GUI = Graphical User Interface graphische Benutzerschnittstelle Java Tutorial java.sun.com/docs/books/tutorial/index.html Java Documentation (in Version
MehrObjektorientierte Programmierung OOP Objektorientierte Programmierung (OOP) mit Java
9 Übungen: Applets Objektorientierte Programmierung OOP Objektorientierte Programmierung (OOP) mit Java 1. Java-Applet mit Text 2. Java-Applet mit Bild und Text 3. Java-Applet mit Grafik 9 Applets 4. Java-Applet
MehrAlgorithmen und Programmierung II
Algorithmen und Programmierung II Abstrakte Klassen, Schnittstellen und ADT Prof. Dr. Margarita Esponda SS 2012 1 Interfaces In Java sind Interfaces sowohl ein Abstraktionsmittel (zum Verbergen von Details
MehrKapitel 13. Abstrakte Methoden und Interfaces. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz
Kapitel 13 Abstrakte Methoden und Interfaces 13. Abstrakte Klassen und Interfaces 1. Abstrakte Klassen 2. Interfaces und Mehrfachvererbung Folie 12.2 Abstrakte Methoden und Klassen Manchmal macht es überhaupt
MehrMusterlösung Stand: 5. Februar 2009
Fakultät IV Elektrotechnik/Informatik Probeklausur Einführung in die Informatik I Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der Teilleistung TL 2 (Programmiertest)
MehrGrafische Benutzeroberfläche mit Java-Applets
Grafische Benutzeroberfläche mit Java-Applets Joachim u. Marion Lammarsch, Rothenberg Mai 2002 Diese Unterlagen dienen lediglich der Arbeitserleichterung der Kurs-Teilnehmer. Sie sind kein Handbuch oder
MehrDrucken. Programmieren II. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011
Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 Drucken Grundlagen In Java wird zum Drucken die Java Printing API verwendet. Die entsprechenden Klassen und Schnittstellen
MehrSelbststudium OOP7 & ALG2 Auftrag
Selbststudium OOP7 & ALG2 Auftrag Kapitel 5.6 1. zu bearbeitende Aufgaben: 5.24 bis 5.30 5.24: Return Method Set entryset() V get(object key) Set keyset() V put(k key, V value) void
MehrKlausur: Java (Liste P)
Klausur: Java (Liste P) WS05/06 Erlaubte Hilfsmittel: Gebundene! Unterlagen (Skript mit Anmerkungen, eigene Mitschrift) und maximal ein Buch. Bitte keine losen Blätter. Lösung ist auf den Klausurbögen
MehrProbeklausur Informatik 2 Sommersemester 2013
Probeklausur Informatik 2 Sommersemester 2013 1 Probeklausur Informatik 2 Sommersemester 2013 Name: Matrikelnummer: Hilfsmittel: Es sind alle schriftlichen Unterlagen, aber keine elektronischen Hilfsmittel
MehrLesen Sie zuerst die Hinweise auf der Rückseite!
FernUniversität in Hagen D-58084 Hagen Fachbereich Informatik Lehrgebiet Praktische Informatik V Programmiersprachen und Softwarekonstruktion PD Dr. Markus Müller-Olm (Name, Vorname) (Straße, Nr.) (PLZ)
MehrSommersemester Implementierung III: GUI und Verhalten (Teil 2)
Sommersemester 2003 Implementierung III: GUI und Verhalten (Teil 2) 26 Aufgabe 5 Implementierung III: GUI und Verhalten (Teil 2) Umfang: 1 Woche Punkte: 50 P. Als Nächstes soll die Implementierung des
MehrObjektorientierung (OO)
Objektorientierung (OO) Objekte haben Zustände (oder Eigenschaften, Attribute) und Verhalten Zustände: Objektvariablen (in Java auch fields) Verhalten (oder Aktionen): Methoden (methods, Funktionen) members
MehrSchwerpunkte. 10. Felder (Arrays) Grundprinzip von Arrays. Klassifikation von Typen in Programmiersprachen
Schwerpunkte 10. Felder (Arrays) Teil 1 Java-Beispiele: Echo.java Primzahlen.java Monate.java Klassifikation von Typen in Programmiersprachen Array: einziger strukturierter Typ in Java Deklaration, Erzeugung
Mehr9 Graphikfenster 9-1. Grafikfenster. Ereignisorientiertes Programmieren. Übungsaufgaben
9 Graphikfenster 9-1 Inhalt Grafikfenster Fenster Ereignisorientiertes Programmieren Komponenten Layout Übungsaufgaben Fenster Wir haben bisher rein text-basierte Programme geschrieben. Nun wollen wir
MehrIst eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt
GUI GUI = Graphical User Interface Ist eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt Gute Übersicht über alle Funktionalitäten
MehrII. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
Mehrclass BahnTest2 { public static void main(string[] args) { Zug myice = new Zug("ICE Duisburg", 1200, 0, 50); BahnCardFahrer kunde2 = new BahnCardFahre
class BahnTest2 { public static void main(string[] args) { Zug myice = new Zug("ICE Duisburg", 1200, 0, 50); BahnCardFahrer kunde2 = new BahnCardFahrer(args[0], myice, (new Integer(args[1])).intValue());
MehrObjektorientierte Programmierung Studiengang Medieninformatik
Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 5 12.04.2017 Was bisher geschah... Objektorientierte Programmierung Klassen und Objekte, Attribute
MehrAbteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2
Inhalt 1. Printing API 1. Übersicht 2. Vorgehen 3. Beispiel 2. Klasse PrintUtils 3. Mehrere Seiten drucken Folie 1 Lernziele Sie wissen, wie Sie Swing-Komponenten ausdrucken können Sie kennen den Aufbau
MehrGUI. AnPr. Name Klasse Datum. ANPR_GUI_Canvas_v03.docx Seite 1
Name Klasse Datum 1 Canvas malen, ohne Einschränkungen Das Wort Canvas bedeutet Leinwand und soll ausdrücken, dass wir damit auf einer Fläche beliebige Formen platzieren können. Hierzu gehören unter anderem:
Mehr