Versuchsziele Vertiefung im Verständnis der JFrame-Programmierung, Benutzung von Klassen für die Grafikanzeige.
|
|
- Regina Lenz
- vor 6 Jahren
- Abrufe
Transkript
1 Hochschule Harz FB Automatisierung und Informatik 2. Labor: Grafische Nutzerschnittstellen mit Java Grafikdarstellung Thema:Anzeigen einer Grafikdatei Versuchsziele Vertiefung im Verständnis der JFrame-Programmierung, Benutzung von Klassen für die Grafikanzeige. Aufgabenstellung: Erweitern Sie das erste Labor. Das MyJInternalFrame soll die ausgewählte Datei über eine Klasse Middleware einlesen und über die Klasse Canvas darstellen. Abbildung 1 Musterlösung mit einigen JInternalFrames und deren Daten Wichtige Hinweise: In jedem JInternalFrame wird genau eine Datei dargestellt. Es werden nur vorhandene Dateien benutzt. Das New-File-Event wird nicht benötigt Das Open-File-Event gibt die ausgewählte Datei an das aktive Fenster. Das Save bzw. SaveAs-File-Event gibt es nicht Gesamte Musterlösung (inkl. 1. Labor): 1096 Zeilen Einiger vorhandener Quellcode muss geändert bzw. gelöscht werden 1
2 Aufgabenstellung: Entwickeln Sie ein Programm, welches Grafikdateien (*.grf) nach der unten aufgelisteten Spezifikation einliest und die darin gespeicherten Objekte auf einem Canvas eines JInternalFrames grafisch darstellt. Die Datei gliedert sich in zwei Teile. Der erste Teil besteht aus einem Kopfteil (Header), der zweite besteht aus den grafischen Elementen. In der Einleseroutine wird erst der Header gelesen und dann in einer Schleife die verschiedenen Objekte. Für jeden Datensatz muss ein passendes Objekt erzeugt werden und in ein internes Vectorfeld der Klasse Middleware eingetragen werden (Ein Beispiel ist vorgegeben). In der Paint-Methode der Klasse Canvas werden die Objekte gezeichnet. Die Klasse Canvas speichert nur die Grafikliste als Referenz. Für jedes grafisches Objekt ist eine eigene Klasse zu entwerfen (z. B. MyLine, MyCircle, MyTriangle, MyPolyline). Dabei sind sämtliche Attribute als privat zu deklarieren. Für die Aufgabe werden die benötigten Klassen in einer Rohform zur Verfügung gestellt. Weitere Information sind den Skripten bzw. den Beispieldateien zu entnehmen. Kommentierung Sie den Quelltext. Switch-Anweisungen müssen den default-fall abprüfen und mit einer Fehlermeldung abschließen (passive Programmierung). Wichtig: Fehlerhafte Dateien dürfen das Programm nicht zum Absturz bringen. Das Programm soll dann eine sinnvolle Fehlermeldung ausgeben. Dazu soll in der Klasse Middleware eine private Variable mit get-methode implementiert werden. Diese zeigt an, ob das Einlesen vollständig war. Sinnvoll wäre zum Beispiel ein String, der mit einem Fehlertext versehen werden kann. Diese Text könnte dann im Canvas angezeigt werden. Hinweis: Es gibt fehlerhafte Dateien, die auch abgefangen werden müssen! Inhalt der Beispieldateien: bsp01.grf Linie bsp02.grf Kreis bsp03.grf Kreis, Quadrat bsp04.grf Zwei Polylinien bsp05.grf zwei Dreiecke bsp06.grf Würfel bestehend aus 1 Rechteck, 2 Linien, 1 Polyline bsp07.grf zwei Rechtecke mit zwei Inkreisen bsp08.grf zwei Rechtecke mit Kreisen bsp09.grf 1000 Linien, jede einzeln eingebaut ;-) bsp10.grf Surprise ;-) bsperror1.grf bsperror2.grf bsperror3.grf Fehlerhafte Datei Fehlerhafte Datei Fehlerhafte Datei 2
3 Lösungen der mitgelieferten Dateien mit den Originalen Fenstergrößen: Ausgabe Datei bsp02.grf Ausgabe Datei bsp01.grf Ausgabe Datei bsp03.grf Ausgabe Datei bsp04.grf Ausgabe Datei: bsp05.grf Ausgabe Datei bsp06.grf 3
4 Ausgabe Datei bsp07.grf Ausgabe Datei bsp08.grf Ausgabe Datei bsp09.grf? Ausgabe Datei bsp10.grf Typen und Koordinaten der Beispiel-Dateien BSP01.grf Fenster: 300 x 250 Pixel (w/h) Linie: 10/80 bis 180/180 Farbe: rot Linienstärke: 2 BSP02.grf Fenster: 607 x 331 Pixel (w/h) Kreis: Mittelpunkt: 150/150 Radius: 120 Farbe: rot BSP03.grf Fenster: 300 x 330 Pixel (w/h) Rechteck: 40/40 bis 280/280 Farbe: Kreis: Mittelpunkt: 160/160 Radius: 120 Farbe: rot 4
5 BSP04.grf Fenster: 400 x 430 Pixel (w/h) Polylinie: 40, , ,200 40,200 Farbe: 3435 Polylinie: 70, , , , , , ,270 Farbe: BSP05.grf Fenster: 500 x 530 Pixel (w/h) 1. Dreieck: 100, , ,300 Farbe: rot 2. Dreieck: 100, , ,70 Farbe: blau BSP06.grf (Würfel) Fenster: 300 x 330 Pixel (w/h) Rechteck: 100/150 bis 200/250 Farbe: 0xFFF 1. Linie: 100/150 bis 171/79 Farbe: rot Polyline: 100/ /79 271/79 271/ /250 Farbe: Linie: 171/79 bis 171/150 Farbe: rot 3. Linie: 271/79 bis 200/150 Farbe: schwarz 5
6 BSP07.grf Fenster: 450 x 470 Pixel (w/h) Circle: 180/180, Radius 170 Farbe: rot Rectangle: 10/10 bis 350/350 Farbe: Circle: 180/180, Radius 120 Farbe: rot Rectangle: 60/60 bis 180/180 Farbe: BSP08.grf Fenster: 500 x 500 Pixel (w/h) Circle: 200/200, Radius 180 Farbe: rot Circle: 200/200, Radius 90 Farbe:schwarz Rectangle: 20/20 bis 200/200 Farbe: Rectangle: 200/200 bis 380/380 Farbe: BSP09.grf Fenster: 500 x 500 Pixel (w/h) 1000 Linien mit Zufalls-Koordinaten und Zufalls-Farben BSP10.grf: Surprise Fenster: 500 x 500 Pixel (w/h) Circle: 250/250, Radius 200 Farbe: blau Rectangle: 120/150 bis 220/175 Farbe: Grün Rectangle: 190/150 bis 390/175 Farbe: Grün etc. BSPError1.grf Fehlerhafter Dateikennung BSPError2.grf Fehlerhafter Header, Version ist 2 BSPError3.grf Fehlerhafter Header, negative Abmessungen 6
7 Aufbau der Datei Die Java-Dateien haben folgenden Aufbau: Open-File-Event Create JInternalFrame Create Middleware, jede grf-datei hat ihre eigene Middleware readfile Read Header (loadfromdata) Read Objekte (loadfromdata) Show Windows readfile in der Klasse Middleware Read Header Read Objekt-Kennung, korrekter Typ? While(...) { Read Objekt-Kennung, korrekter Typ? Create Objekt Read Objekt Insert Objekt Read Objekt-Kennung, korrekter Typ? } paint.routine in MyCanvas For all Objekte in _liste { Referenziere Objekt g.draw ( ) } Klasse Header Private Attribute Set / get -Methoden loadfromdata(... ) Klasse Linie Private Attribute loadfromdata(... ) draw( ) etc. 7
8 Überblick über alle Klassen Klasse MDI-Hauptframe Labor1.java (JFrame) Deklaration der Variablen setgui o Verhindern, dass die Menüs nicht sichtbar sind o Eintragen in der Methode setgui NEU setdefaultlightweightpopupenabled(false); actionperformed newfile o Datei Öffnen mittels eines FileChoosers o Erzeugt einen MyInternalFrames (Parameter sfilename). Der Dateiname wird in der Titelzeile angezeigt. o Eintragen in das DesktopPane o Aufruf der Methode setgrafiksize (NEU) openfile o Neue Auswahl mittels eines FileChoosers o Der Dateiname wird dem aktuellen Fenster übergeben (Parameter sfilename) und in der Titelzeile angezeigt o Aufruf der Methode setgrafiksize (NEU) Klasse MyInternalsFrame Deklaration der Variablen o private sfilename bitte LÖSCHEN, ist in Middleware o private Middleware _middleware; o private MyCanvas _canvas; Konstruktor o Initialisieren der Variablen o Erstellen einer Instanz der Klasse Middleware Middleware erhält den Dateinamen setgui o Layout setzen o Canvas erzeugen und einfügen in das Layout o Die Klasse Canvas erhält einen zusätzlichen Parameter (Middleware middleware) public setgrafiksize // neu o setzen der Größe nach dem Lesen. Diese Methode muss nach dem Eintragen in das DesktopPane aufgerufen werden. Sonst wird die Originalgröße aus der grf-datei nicht gesetzt. JInternalFrame-Optionen: setclosable(true); seticonifiable(true); setmaximizable(true); setresizable(true); Klasse Middleware Deklaration der Variablen o private ArrayList _grafikliste Typisiert wäre besser ;-) o private String _sfilename; o private int height=0; o private int width=0; 8
9 Konstruktor o Initialisieren der Variablen private readfile(string sfilename o Öffnen der Datei o Lesen des Headers o Speichern der Abmessungen o Irgendetwas mit der Grafikliste machen o Lesen der Grafikdaten bis zum letzten Datensatz (Typ=0) Abfragen des Typs Erzeugen des Grafiktyps Lesen des Grafiktyps, aber nicht hier Einfügen o Schließen des Dateikanals (fin) Klasse MyCanvas Löschen des Default-Konstruktors Erstellen eines Konstruktors mit einem Parameter der Klasse Middleware o Aus dem Parameter Middleware die Liste holen und global speichern Speichern des Parameters in einer globalen Variablen der Klasse Überschreiben der Methode void paint (Graphics g) o Aufruf von super.paint super.paint(g); // Neu o Einen weißen Hintergrund erstellen o Aus der Liste die grafischen Elemente holen Canvas-Optionen: setcolor( color) fillrect(x,y, width, height) drawline(x1,y1, x2,y2) Optional: Graphics2D g2 = (Graphics2D) g; float[] dash = { 20, 10 }; // new float[]{ 20,10 } BasicStroke stroke = new BasicStroke( 12, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1, dash, 10 ); g2.setstroke( stroke ); Strichdicke für Linien: Graphics2D g2 = (Graphics2D) g; g2.setstroke( new BasicStroke(strichstaerke) ); g.drawline(10,10, 300,400) ; Klasse MyHeader Löschen des Default-Konstruktors Implementieren der Methode loadfromdata o Lesen der Magic-Number o Lesen und speichern der Versionsnummer o Lesen und speichern der Breite o Lesen und speichern der Höhe 9
10 Klasse MyGrfObject Hat folgende Methoden o draw(graphics g); o loadfromdata(datainputstream DataIn) throws IOException; Außerdem müssen noch einige Wörter in die Klasse eingefügt werden Klasse MyLine Erstellen der privaten Attribute Implementieren der abstrakten Methoden o loadfromdata Lesen von x1, y1, x2, y2 Lesen von color (int) Lesen der Linienstärke (linewidth) o draw setzen der Farbe setzen der Linienstärke zeichnen der Linie Klasse MyCircle Erstellen der privaten Attribute Implementieren der abstrakten Methoden o loadfromdata Lesen von x, y, radius Lesen von color (int) o draw setzen der Farbe zeichnen des Kreises Klasse MyRect Erstellen der privaten Attribute o Width und Height dürfen nicht als Attribute verwendet werden. Implementieren der abstrakten Methoden o loadfromdata Lesen von x1, y1, x2, y2 Width und Height dürfen nicht als Attribute verwendet werden. Lesen von color (int) o draw setzen der Farbe zeichnen des Rechteckes Klasse MyTriangle Erstellen der privaten Attribute Implementieren der abstrakten Methoden o loadfromdata Lesen von x1, y1, x2, y2, x3, y3 Lesen von color (int) o draw setzen der Farbe setzen der drei einzelnen Linien 10
11 Klasse MyPolyline Erstellen der privaten Attribute o Farbe o Array von x o Array von y Implementieren der abstrakten Methoden o loadfromdata Lesen der Anzahl der Koordinaten Irgendetwas erzeugen Lesen der Koordinaten Lesen der Farbe o draw setzen der Farbe zeichnen der Polyline Versuchsdurchführung Alle Klassen erstellen: 1) Eintragen in der Methode setgui: setdefaultlightweightpopupenabled(false); 2) Erstellen der Klasse Middleware. Ein Rahmen ist als Txt-Datei vorhanden. Bitte benutzen. 3) Erstellen der Klasse Kostanten. Ein vollständiger Rahmen ist als Txt-Datei vorhanden. Bitte benutzen. 4) Erstellen der Klasse MyHeader. Ein Rahmen ist als Txt-Datei vorhanden. Bitte benutzen. 5) Erstellen der Klasse MyGrfObject. Ein Rahmen ist als Txt-Datei vorhanden. Bitte benutzen. 6) Erstellen der grafischen Klassen. Ein jeweiliger Rahmen ist als Txt-Datei vorhanden. Bitte benutzen. Modifikation des Quellcode: 7) Klasse Middleware Löschen Sie das Attribut sfilename in der Klasse MyJinternalFrame. Einbau der Klasse Middleware als Attribut. Verknüpfen der Attribute canvas und middleware. Im Konstruktor muss der Dateiname gesetzt werden. Im Konstruktor muss die Datei durch die Klasse Middleware gelesen werden. Implementierung der Methode setgrafiksize. Einbau des Aufrufs der Methode setgrafiksize nach dem Einfügen des MyJInternalFrames. 11
12 8) Klasse Header Einbau der Attribute. Einbau der set- und get-methoden. Implementierung der Methode loadfromdata Eingelesen werden dürfen die Daten des Headers nur in der Methode loadfromdata( ). Im Konstruktor darf das Einlesen nicht stattfinden. o Lesen der Magic-Number o Lesen der Version o Lesen der Breite und Höhe o Test der Attribut auf Korrektheit 9) Klasse Middleware Implementierung der Methode loadfromdata o Öffnen der Datei o Lesen des Headers o Ausgabe von Testdaten mittels syso 10) Klasse MyJInternalFrame Implementierung der Methode setfilename o In der Middleware setzen des Dateinamens o Titel setzen o Lesen der Datei o Fenstergröße setzen 11) Klasse MyGrfObject Verändern des Quellcodes, so dass die Klasse sinnvoll genutzt werden kann. 12) Klasse MyLine Einbau der Attribute. Kein Einbau von set- und get-methoden. Implementierung der Methode loadfromdata Eingelesen werden dürfen die Daten nur in der Methode loadfromdata( ). Im Konstruktor darf das Einlesen nicht stattfinden. o Lesen der vier Koordinaten o Lesen der Farbe als int-wert o Lesen der Strichstärke (int Implementierung der Methode draw o Setzen der Farbe o Casten des g auf Graphics2D o Setzen der Strichstärke o Zeichnen der Linie 13) Test mit der ersten Datei bsp01.grf Fenster: 300 x 250 Pixel (w/h) Linie: 10/80 bis 180/180 Farbe: rot Linienstärke: 2 14) Vervollständigen Sie die weiteren Grafik-Klassen. Entwickeln Sie insbesondere die Methoden loadfromdata( ) und draw Eingelesen werden die Daten der Grafikelemente nur in den jeweiligen Klassen resp. in der Methode loadfromdata( ). Nicht im Konstruktor! Implementieren Sie die Grafikausgabe in der Methode paint() des Canvas. Jedes Objekt muss mit der Methode draw(g) gezeichnet werden. 12
13 Hinweise: Erste Tests können mit den Dateien (bsp01.grf bis bsp04.grf) durchgeführt werden. Für die Fehlerprüfung werden die Dateien (bsp06.grf und bsp07.grf) verwendet. Falls ein Fehler beim Einlesen der Datei auftritt, soll der Anwender durch die eine Fehlerausgabe im Dos-Fenster benachrichtigt werden (Syso). Lesen Sie alle geometrischen Objekte aus der Datei und speichern Sie diese im privaten Objekt. Fügen Sie das neue Objekt dann in die Liste. Verwenden Sie für die Unterscheidung der Grafiktypen die vorhandenen Konstanten. Zum Bestehen des Labors müssen alle vorgegebenen Dateien ohne Absturz funktionieren. Hinweise: a) Verwenden Sie nur Standardjava. b) Farben Die gespeicherten Farben entsprechen einem RGB-Wert (32-Bits). Das Objekt Color wird durch folgenden Konstruktor erzeugt: Beispielcode: Color c; int rgbwert = 255; c = new Color(rgbwert) ); c) Paint-Methode Durch das Eintragen in die Liste kann es vorkommen, dass beim ersten Zeichnen nicht alle Elemente dargestellt werden. Nachdem Einlesen sollte man deshalb das Canvas sich neu zeichnen lassen. Dazu gibt es die Methode updateui. 13
14 Aufbau der Dateien: Aufbau des Headers: Byte Bedeutung Erläuterung 0-1 Dateikennung KI (KommunkationsInformatik) K=75 I= Version Breite der Grafik Bedingung: Breite > Höhe der Grafik Bedingung: Höhe> 0 Definition der Konstanten: 1: Linie x1, y1, x2, y2, Farbe, Linienstärke 2: Rechteck x1, y1, x2, y2, Farbe 3: Kreis x1, y1, Radius, Farbe 4: Dreieck x1, y1, x2 y2, x3, y3, Farbe 5: Polylinie x1, y1,, xn, yn, Farbe Schema der Speicherung der Objekte: Header Kennung des 1. Objektes (2 Byte) Datensatz des 1. Objektes Kennung des 2. Objektes (2 Byte) Datensatz des 2. Objektes Kennung des 3. Objektes (2 Byte) Datensatz des 3. Objektes Kennung des n. Objektes (2 Byte) Datensatz des n. Objektes Kennung 0 DATENSATZENDE 14
15 Definition der Linie (MyLine): Bytes Type 0-1 Kennung (1) 2-5 x1 6-9 y x y Farbe Strichstärke Definition des Rechtecks (MyRect): Bytes Type 0-1 Kennung (2) 2-5 x1 6-9 y x y Farbe Definition des Kreises (MyCircle): Bytes Type 0-1 Kennung (3) 2-5 x 6-9 y Radius Farbe Definition des Dreiecks (MyTriangle): Bytes Type 0-1 Kennung (4) 2-5 x1 6-9 y x y x y Farbe 15
16 Definition der Polylinie (MyPolylinie): Bytes Type 0-1 Kennung (5) 2-5 Anzahl der Koordinaten (0 bis beliebig) 6-9 x y x y x y x y3 etc Farbe Grafikfunktionen in Java: Methode drawline() drawoval() drawpolyline drawrect() setcolor() Beschreibung: zeichnet eine Gerade void drawline(int x1, int y1, int x2, int y2) zeichnet eine Ellipse void drawoval(int x, int y, int width, int height) zeichnet ein Linie mit mehreren Punkten (Array) void drawpolyline(int [] xpoints, int [] ypoints, int anz) zeichnet ein Rechteck void drawrect(int x, int y, int width, int height) legt die Zeichnungsfarbe fest void setcolor(color c) void setcolor( new Color(int) ) Zusätzliche Grafikbefehle (für Klasse MyLine): Dickere Linie: Graphics2D g2 = (Graphics2D) g; g2.setstroke( new BasicStroke(4.0f) ); 16
17 Beispiele: Einlesen eines double-wertes: FileInputStream Fin; DataInputStream Din; double d; try { Fin = new FileInputStream(sFileName); Din = new DataInputStream(Fin); } d = Din.readDouble(); Din.close(); catch (IOException ee) { System.err.println("IOException: " + ee); } Einlesen eines integer-wertes: FileInputStream Fin; DataInputStream Din; int i; try { Fin = new FileInputStream(sFileName); Din = new DataInputStream(Fin); i = DataIn.readInt(); Din.close(); } catch (IOException ee) { System.err.println("IOException: " + ee); } 17
18 Klasse ArrayList: Die Klasse Vector speichert beliebige Objekte in einer Liste (Vergleichbar mit einem dynamischen Array). Methoden des Objektes Vector: add(object) get (i) size() clear() Trägt ein Objekt in die Liste ein Gibt das i-te Element aus der Liste aus. Der Index zählt von 0 bis n-1!! Gibt die Anzahl der Elemente aus Löscht alle Elemente in der Liste Deklaration und Erzeugen eines Vector: ArrayList liste1 = new ArrayList (); // speichert beliebige Objekte ArrayList <Circle> liste2 = new ArrayList <Circle>(); // speichert nur Kreise Element aus der Liste holen: Object obj = liste1.elementat(2); Circle c = (Circle) obj; // Cast Circle c = liste2.get(2); // automatischer Cast möglicher Beispielquellcode: MyLine linie; // speichert ein Linienobjekt MyLine linie2; // Zwischenspeicher für ein Linienobjekt MyCircle kreis; // speichert ein Kreisobjekt MyCircle kreis2; // Zwischenspeicher für ein Kreisobjekt Object obj; // Zwischenspeicher für die Liste ArrayList liste; // Deklaration linie=new MyLine(); kreis = new MyKreis(); liste = new Vector(); liste.add(linie); liste.add(kreis); // Vector wird erzeugt // Objekt vom Typ MyLine wird in die Liste eingetragen // Objekt vom Typ MyCircle wird in die Liste eingetragen for (int i=0; i<liste.size(); i++) { Object obj = liste.get(i); // weitere Verarbeitung } 18
Versuchsziele Konzepte der parallelen Programmierung am Beispiel von Threads anwenden können. Einbau von Kontrollmechanismen mittels Semaphore.
Hochschule Harz Versuch: fcopy Mit Java FB Automatisierung und Informatik Betriebssysteme Thema: Kopieren einer Datei unter der Kontrolle von Semaphoren Versuchsziele Konzepte der parallelen Programmierung
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:
MehrSchlussendlich geben wir die Listen aus. Es kommt zu folgender Ausgabe:
Musterlösung Übung 7 Aufgabe 1 Sehen wir uns zu allererst das gegebene Forth Programm an: 0 3 new - list constant list1 list1 5 new - list constant list2 list1 6 new - list constant list3 list2 2 new -
MehrArbeitsblatt 6: Programmierung geometrischer Figuren
Arbeitsblatt 6: Programmierung geometrischer Figuren Die Karten, auf denen die Lärmmessungen dargestellt werden, bestehen aus einer Vielzahl geometrischer Formen. Diese geometrischen Formen ergeben zusammen
MehrFragen zur OOP in Java
- 1 - Inhalt Was bedeutet OOP?... 2 Was versteht man unter einer Klasse?... 2 Wie nennt man die Mitglieder einer Klasse?... 2 Wie erzeugt man Objekte?... 2 Wie greife ich auf Member einer Klasse zu?...
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
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Semestralklausur Einführung in die Programmierung Semestralklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList
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]
MehrVertiefung im Verständnis der SDI-Programmierung mit der Tabelle ListView unter Visual Studio 2008.
Hochschule Harz MFC FB Automatisierung und Informatik Grafische Nutzerschnittstellen mit MFC Thema: SDI-Programmierung mit ListView Versuchsziele Vertiefung im Verständnis der SDI-Programmierung mit der
MehrDurch die Möglichkeit, Ein- und Ausgaben auf der Konsole durchzuführen, kann man auch systematisch das Verhalten von Klassen analysieren.
Durch die Möglichkeit, Ein- und Ausgaben auf der Konsole durchzuführen, kann man auch systematisch das Verhalten von Klassen analysieren. 267 Das hier skizzierte Problem basiert auf der strategischen Entscheidung
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
MehrVersuchsziele. Grundlagen. Überblick: FB Automatisierung und Informatik Betriebssysteme Thema: Bounded-Buffer-Problem. 3.
Hochschule Harz 3. Labor Threads FB Automatisierung und Informatik Betriebssysteme Thema: Bounded-Buffer-Problem Versuchsziele Vertiefung im Verständnis der Thread- und Semaphor-Programmierung. Grundlagen
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
MehrADT: Java Collections und ArrayList
ADT: Java Collections und ArrayList Überblick der Klassen Object File Collections Map List Set ArrayList LinkedList SortedSet HashSet SortedSet Methode ArrayList Klasse I Beschreibung void add(int position,
MehrImplementieren von Klassen
Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und
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.
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 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
MehrKapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen
Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18
Mehrpue08 December 9, 2016
pue08 December 9, 2016 1 Aufgabe 1: Ein einfaches Zeichenprogramm 1.1 a) Erstellen Sie eine Klasse Square mit den folgenden Eigenschaften: Objektvariablen: - width: Seitenlänge (default: 0) - color: Füllfarbe
MehrStaubsauger-Roboter. Als Vorlage dienen dir drei Klassen: RECHTECK Damit kannst du die Wände des Raums darstellen.
Projekt: Staubsauger-Roboter Immer beliebter werden die kleinen automatischen Haushaltshilfen. Du sollst nun einen Staubsauger-Roboter programmieren, der gesteuert von einer künstlichen Intelligenz (KI)
MehrInstitut für Programmierung und Reaktive Systeme. Java 6. Markus Reschke
Institut für Programmierung und Reaktive Systeme Java 6 Markus Reschke 13.10.2014 OOP Objekte = Verhalten (durch Methoden) + Daten (durch Attribute) Klassen = Baupläne für Objekte Kapselung von Programmteilen
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
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrTheorie zu Übung 8 Implementierung in Java
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept
MehrÜbungsblatt Programmierung und Software-Entwicklung Generizität, Interfaces, Listen, Sortieralgorithmen & JUnit
Übungsblatt Programmierung und Software-Entwicklung Generizität, Interfaces, Listen, Sortieralgorithmen & JUnit Aufgabe : Die allgemeine Object-Liste Gegeben sei folgendes UML-Klassendiagramm: MyObjectList
MehrAllgemeines - Prinzipien
OOP - Prinzipien Allgemeines - Prinzipien OO modelliert die reale Welt als System interagierender Objekte Objekt = gedankliche oder reale Einheit in der Umwelt und/oder in Software Klar definierte Schnittstellen
MehrEinstieg in die Informatik mit Java
1 / 22 Einstieg in die Informatik mit Java Generics Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Überblick Generics 2 Generische Klassen 3 Generische Methoden 4
MehrObjektorientierung. Programmierstarthilfe WS 2010/11 Fakultät für Ingenieurwissenschaften und Informatik
Programmierstarthilfe WS 2010/11 Fakultät für Ingenieurwissenschaften und Informatik Organisatorisches Im Web unter http://www.uni-ulm.de/psh Vorwissen Du kannst bereits Klassen als Typen mit statischen
MehrGraphische Nutzerschnittstellen
Graphische Nutzerschnittstellen Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Inhalt 1. Einführung,
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
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
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1. Kapitel 11. Listen. Listen
Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1 Kapitel 11 Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 2 Ziele Implementierungen für
MehrEinführung in die Programmierung für Nebenfach Medieninformatik. Beat Rossmy, Michael Kirsch
Einführung in die Programmierung für Nebenfach Medieninformatik Beat Rossmy, Michael Kirsch Direct Feedback - Socrative Eure Mitarbeit ist uns wichtig! Installiert euch dazu die kostenlose App Socrative
MehrDurch die Teil-von-Beziehung soll ausgedrückt werden, dass ein Objekt A als (physikalischer) Teil eines Objekts B angesehen wird. Insbesondere kann ei
Lösungsvorschläge zur Klausur zum Kurs 1618 Sommersemester 2001 am 22.9.2001 Aufgabe 1 a) Benutzungsbeziehung: class Kennzeichen class Fahrzeug boolean gueltigeskennzeichen (Kennzeichen kz) Objekte der
MehrHochschule Darmstadt Informatik-Praktikum WS 2017/2018 WIng Bachelor 6. Aufgabenblatt Zeiger, verkettete Liste, Dateieingabe und -ausgabe
Aufgabe 6: Häuser verwalten - dynamisch Für ein Schneeräumungsunternehmen soll ein Programm zur Verwaltung von Häuserlisten geschrieben werden. Das Programm soll in der Lage sein, zu einem Haus die wichtigsten
MehrProgrammieren in Java
Einführung in die Objektorientierung Teil 4 Interfaces, innere Klassen und Polymorphie 2 Vererbung im Klassendiagram (Wiederholung) Vererbung repräsentiert eine ist ein Beziehung zwischen Klassen Ware
MehrKlausur Grundlagen der Programmierung
Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel
Mehr7. Arrays. Beim Deklarieren und Initialisieren der Liste bräuchte man oft zueinander sehr ähnlichen Code:
7. Arrays Gelegentlich braucht man für ein Programm mehrere Attribute desselben Datentyps oder derselben Klasse. Beispiel: In der Highscore-Liste eines Spiels werden von den 10 besten Spielern die Namen
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
MehrAnwendung Kamel-Simulation
Anwendung Kamel-Simulation (Nach einer Idee von Christian Wendl) Normale Kamele haben die Eigenschaften Alter, Gewicht, Name und Darstellung (für die Darstellung wählen wir ein WECHELSBILD). Durch Züchtung
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:
MehrJAVA KURS COLLECTION
JAVA KURS COLLECTION COLLECTIONS Christa Schneider 2 COLLECTION Enthält als Basis-Interface grundlegende Methoden zur Arbeit mit Collections Methode int size() boolean isempty() boolean contains (Object)
MehrVererbung. Generalisierung und Spezialisierung Vererbung und Polymorphismus
Vererbung Generalisierung und Spezialisierung Vererbung und Polymorphismus Wir wollen in unserem Aquarium verschiedene Arten von Fischen schwimmen lassen. In einem ersten Ansatz definieren wir nicht nur
MehrGraphische Benutzungsoberflächen mit Java. Einführung in NetBeans
Graphische Benutzungsoberflächen mit Java Einführung in NetBeans Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung
MehrÜbungsblatt 1. Java Vorkurs (WS 2017)
Übungsblatt 1 Java Vorkurs (WS 2017) Aufgabe 1 Hallo-Welt Erstelle ein neues Projekt mit dem Namen HelloJava. Erzeuge in diesem Projekt eine neue Klasse HelloJava. (a) Schreibe die main-methode in die
MehrProgrammieren in Java -Eingangstest-
Programmieren in Java -Eingangstest- Nummer: 1. Studiengang: Informatik B.Sc. Informatik M.Sc. ESE B.Sc. ESE M.Sc. Sonstiges: Fachsemester: Bitte Fragen, die Sie nicht beantworten können unbedingt mit
MehrC++ - Objektorientierte Programmierung Konstante und statische Elemente
C++ - Objektorientierte Programmierung Konstante und statische Elemente hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja
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
MehrVorkurs Informatik WiSe 17/18
Institut für Programmierung Java Objektorientierte Programmierung Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 11. bis 13.10.2017 Technische Universität Braunschweig, IPS Warum OOP? OOP mit Java
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 16/17. Kapitel 13. Listen. Listen 1
Kapitel 13 Listen Listen 1 Ziele Implementierungen für Listen kennenlernen Einfach verkettete und doppelt verkettete Listen verstehen Listen-Implementierungen in der Java-Bibliothek kennenlernen Durch
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 12. Listen. Listen 1
Kapitel 12 Listen Listen 1 Ziele Implementierungen für Listen kennenlernen Einfach verkettete und doppelt verkettete Listen verstehen Listen-Implementierungen in der Java-Bibliothek kennenlernen Durch
MehrObjektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types)
Stefan Brass: OOP (Java), 22. Aufzählungstypen 1/20 Objektorientierte Programmierung Kapitel 22: Aufzählungstypen (Enumeration Types) Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester
MehrInformatik I (D-MAVT)
Informatik I (D-MAVT) Übungsstunde 9 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich Ablauf Nachbesprechung Übung 7 Besprechung/Vertiefung der Vorlesung Vorbesprechung Übung 9 Aufgabe 1:
MehrC++ - Objektorientierte Programmierung Vererbung
C++ - Objektorientierte Programmierung Vererbung Personen Kunden Mitarbeiter Verwaltung Verkäufer Leibniz Universität IT Services Anja Aue Vererbung Definition von Klassen auf Basis von bestehenden Klassen.
MehrProblem: Was ist, wenn der Stapel voll ist? Idee: Erzeuge dynamisch ein grösseres Array und kopiere um. Dynamische Anpassung der Größe
Maximale Größe?! Problem: Was ist, wenn der Stapel voll ist? Idee: Erzeuge dynamisch ein grösseres Array und kopiere um Dynamische Anpassung der Größe Praktische Informatik I, HWS 2009, Kapitel 10 Seite
MehrUmsetzung einer Klassenkarte in einer Programmiersprache
Klassen in Java Umsetzung einer Klassenkarte in einer Programmiersprache Objektorientierte Programme bestehen (nur) aus Klassendefinitionen In Klassendefinitionen wird die Struktur der Objekte festgelegt,
MehrInfo B VL 8: Abstrakte Klassen & Interfaces
Info B VL 8: Abstrakte Klassen & Interfaces Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 8: Abstrakte
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
MehrGraphic Coding. Klausur. 9. Februar 2007. Kurs A
Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt
Mehr3. Aufgabe: Bitmap-Datei
1 Einleitung 3. Aufgabe: Bitmap-Datei In dieser Programmieraufgabe soll eine Grafik erstellt und gespeichert werden. Es wurde das Bitmap-Format von Microsoft gewählt, da es recht einfach erstellt und von
MehrAbstrakte Klassen, Interfaces
Abstrakte Klassen, Interfaces INE2, Mittwoch 8.00-9.35 / TE561 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was gehtes? Problemstellung Klassenhierachie - verschiedene geometrische
MehrOrganisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50
Organisatorisches Vorlesung Donnerstag 8:35 bis 10:05 Übung drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Tutorium (Mehr oder weniger) abwechselnd Mo und Mi 10-11:30 Termine
MehrIT I: Heute. Klasse Object. equals, hashcode, tostring. HashSet IT I - VO 6 1
IT I: Heute Klasse Object equals, hashcode, tostring HashSet 14.11.2017 IT I - VO 6 1 Wissensüberprüfung Wie ruft man statische Methode auf? Gegeben Klasse Fix mit statischer Methode static boolean foxi(string
MehrC++ - Objektorientierte Programmierung Konstruktoren und Destruktoren
C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren hat eine Kantenlänge hat eine Füllfarbe Kantenlänge setzen Füllfarbe lesen Volumen berechnen Leibniz Universität IT Services Anja Aue
MehrProgrammierung für Mathematik (HS13)
software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 6 1 Aufgabe: Getter- und Setter-Methoden 1.1 Lernziele 1. Getter- und Setter-Methoden verstehen und anwenden. 1.2 Aufgabenstellung
MehrInformatik II Übung 06. Benjamin Hepp 5 April 2017
Informatik II Übung 06 Benjamin Hepp benjamin.hepp@inf.ethz.ch 5 April 2017 Nachbesprechung U5 5 April 2017 Informatik II - Übung 01 2 Nachbesprechung U5 1. Einfach verkettete Listen Keine Probleme 2.
Mehr1 Modellierung einer Uhr
PNS Wahlpflichtfach Informatik Projekt: Uhrzeit Seite 1 1 Modellierung einer Uhr Aufgabe: Es soll ein Modell für eine Digitaluhr erstellt werden, die Stunden und Minuten im Format hh:mm repräsentiert.
MehrGrundlagen der Informatik
Grundlagen der Informatik Polymorphie, Abstrakte Klassen, Mehrfachvererbung Prof. Dr.-Ing. Thomas Wiedemann Prof. Dr. rer.nat. Ralph Großmann Fachgebiet Informatik / Mathematik Überblick zum Inhalt Klassen-3
MehrListen. ArrayList. Definition Listen erzeugen Listen verändern Listen durchlaufen Listen sortieren. Dr. Beatrice Amrhein
Listen ArrayList Definition Listen erzeugen Listen verändern Listen durchlaufen Listen sortieren Dr. Beatrice Amrhein Definition 2 Definition: Liste (ArrayList) Eine C#-Liste (ArrayList) ist eine geordnete
MehrDAP2-Programmierpraktikum Einführung in C++ (Teil 2)
DAP2-Programmierpraktikum Einführung in C++ (Teil 2) Carsten Gutwenger 18. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Dynamischer Speicher Klassen und
MehrUniversität Paderborn Prof. Dr. Heike Wehrheim. Betreutes Arbeiten. Ab diese Woche: freitags, 14 16, E-Pool (während Tutorium Knopf) GPI, WS 07/08
Betreutes Arbeiten Ab diese Woche: freitags, 14 16, E-Pool (während Tutorium Knopf) 375 Wiederholung Klasse: class Klassenname { konzeptuelle Einheit der Modellierungsdomäne kapselt Daten und Operationen
MehrProgrammierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 8. Blatt Für den 16. und
Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 8. Blatt Für den 16. und 17.6.2008 Organisatorisches Um auf die Mailingliste aufgenommen zu werden schicke einfach eine
Mehr5.4 Arrays. Oft müssen viele Werte gleichen Typs gespeichert werden. Idee: Lege sie konsekutiv ab! Greife auf einzelne Werte über ihren Index zu!
5.4 Arrays Oft müssen viele Werte gleichen Typs gespeichert werden. Idee: Lege sie konsekutiv ab! Greife auf einzelne Werte über ihren Index zu! Feld: Index: 17 3-2 9 0 1 0 1 2 3 4 5 Harald Räcke 114/656
MehrOrganisatorisches. Neue Übungsblätter: Nur mehr elektronisch? Abgabe Di, , 14 Uhr bis Do, , 8Uhr
Organisatorisches Neue Übungsblätter: Nur mehr elektronisch? Abgabe Di, 14.10., 14 Uhr bis Do, 23.10., 8Uhr. 14.10.2014 IT I - VO 1 1 IT I: Heute Wiederholung CuP ctd: this Arrays, ArrayLists Schleifen:
MehrTutoraufgabe 1 (Seiteneekte):
Prof. aa Dr. J. Giesl Programmierung WS14/15 C. Aschermann, F. Frohn, J. Hensel, T. Ströder Allgemeine Hinweise: Die Hausaufgaben sollen in Gruppen von je 2 Studierenden aus der gleichen Kleingruppenübung
MehrAllgemeine Informatik II SS :30-13:30 Uhr
TU Darmstadt FB Informatik Prof. J. Fürnkranz Vordiplomsklausur - Lösungsvorschlag Allgemeine Informatik II SS 2005 15.09.2005 11:30-13:30 Uhr Hinweise: Als Hilfsmittel ist nur ein schwarzer oder blauer
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
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
MehrJava Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.
Java Übung Übung 3 Universität Duisburg-Essen Kommedia, Übung EinPro SS06, 2. Mai 2006 (UniDUE) 2. Mai 2006 1 / 17 Aufgabe 1 Umwandeln von do while in for Schleife. Listing 1: aufgabe3 1.java 1 public
MehrProgrammierung für Mathematik (HS13)
software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 11 1 Aufgabe: Codeverständnis 1.1 Aufgabenstellung Notieren Sie, was der folgende Code ausgeben würde, wenn er so in einer
MehrEinstieg in die Informatik mit Java
1 / 15 Einstieg in die Informatik mit Java Collections Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 15 1 Überblick Collections 2 Hierarchie von Collections 3 Verwendung
MehrKapitel 8. Programmierkurs. Methoden. 8.1 Methoden
Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 03 Vererbung, Polymorphie, Sichtbarkeit, Interfaces Clemens Lang T2 11. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/26 Klassen und Objekte Klassen und Objekte
MehrAndroid Programmierung. Studiengang MI
Android Programmierung mit Java Studiengang MI Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://mwilhelm.hs-harz.de Raum 2.202 Tel.
MehrHochschule Darmstadt Informatik-Praktikum WS 2017/2018 EIT Bachelor 5. Aufgabenblatt Datenstruktur, Dateieingabe und -ausgabe
Aufgabe 5: Häuser verwalten Für ein Schneeräumungsunternehmen soll ein Programm zur Verwaltung von Häuserlisten geschrieben werden. Das Programm soll in der Lage sein, zu einem Haus die wichtigsten Informationen
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden
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,
MehrEin String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient.
Strings Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient. Beispiel: String zeile = "Cusanus-Gymnasium Wittlich";
MehrEinführung in die Programmierung für NF MI. Übung 07
Einführung in die Programmierung für NF MI Übung 07 Inhalt Wiederholung Kommentare Wiederholung Arrays Einführung in Objekte Einführung in die Programmierung für NF Übung 07 2 Wiederholung Kommentare Kommentare
MehrHeute. Nachbetrachtung Wissensüberprüfung. Sortieren Interface Comparable TreeSet Sortieren von Arrays: Arrays.sort() 3.12.
Heute Nachbetrachtung Wissensüberprüfung Sortieren Interface Comparable TreeSet Sortieren von Arrays: Arrays.sort() 3.12.2015 IT I - VO 9 1 Organisatorisches Zwischentest findet am 16.12. von 17:30 bis
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
Mehr1 Klassen anlegen und Objekte erzeugen
Werkzeugkiste Java 1 1 Klassen anlegen und Objekte erzeugen Klassengrundgerüst 1 /** 2 * Write a description of class Testklasse here. 3 * 4 * @author ( your name ) 5 * @version (a version number or a
MehrHochschule Darmstadt Informatik-Praktikum SS 2017 EIT Bachelor 5. Aufgabenblatt Datenstruktur, Dateieingabe und -ausgabe
Aufgabe 5: Bücher verwalten Für das Literaturverzeichnis einer Abschlussarbeit soll ein Programm zur Verwaltung von Bücherlisten geschrieben werden. Das Programm soll in der Lage sein, zu einem Buch die
MehrInformatik B. Vorlesung 14 Serialisierung, Autoboxing. Dr. Ralf Kunze
Vorlesung 14 Serialisierung, Autoboxing 1 Serialisierung von Objekten Die Objekte innerhalb eines Java-Programmes sollen manchmal auch nach Beendigung der JVM verfügbar bleiben Objekte müssen ab und an
MehrAlgorithmen, Datenstrukturen und Programmieren I WS 2001/2002
1. Welches Ergebnis liefern die folgenden Operationen? Geben Sie zunächst einen educated guess an und überprüfen Sie diesen dann mittels einer selbstgeschriebenen Java-Applikation. a) x = 7 + 3 * 6 / 2-1;
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
MehrArbeitsblatt 5 EAD II NetBeans
Arbeitsblatt 5 EAD II NetBeans Graphische Oberfläche für Uhrenanzeige mit NetBeans Für die Einführung in die Verwendung von NetBeans erstellen wir die graphische Oberfläche für die Uhr nun mit NetBeans.
MehrBetreutes Programmieren Vorlesung Informatik II, Blatt 11
SS 2011 Fakultät für Angewandte Informatik Lehrprofessur für Informatik 13.07.2011 Prof. Dr. Robert Lorenz Betreutes Programmieren Vorlesung Informatik II, Blatt 11 Programmieraufwand für geübte Programmierer:
MehrName: Klausur Informatik III WS 2003/04
1 : Methodenimplementierung ca. 42 Punkte Gegeben ist die Klasse Mitarbeiter. Listing 1: (./Code1/Mitarbeiter.h) using namespace std; // globale Variable fuer Ausgabedatei // kann entsprechend
Mehr