Tutoraufgabe 1 (Überladen von Methoden):
|
|
- Falko Michel
- vor 6 Jahren
- Abrufe
Transkript
1 Prof. aa Dr. J. Giesl Programmierung WS12/13 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Allgemeine Hinweise: Die Hausaufgaben sollen in Gruppen von je 2 Studierenden aus der gleichen Kleingruppenübung (Tutorium) bearbeitet werden. Namen und Matrikelnummern der Studierenden sind auf jedes Blatt der Abgabe zu schreiben. Heften bzw. tackern Sie die Blätter! Die Nummer der Übungsgruppe muss links oben auf das erste Blatt der Abgabe geschrieben werden. Notieren Sie die Gruppennummer gut sichtbar, damit wir besser sortieren können. Die Lösungen müssen bis Freitag, um 8:00 Uhr in den entsprechenden Übungskasten eingeworfen werden. Sie nden die Kästen am Eingang Halifaxstr. des Informatikzentrums (Ahornstr. 55). Alternativ können Sie die Lösungen auch in Ihrem Tutorium vor der Abgabefrist direkt bei Ihrer Tutorin/Ihrem Tutor abgeben. In einigen Aufgaben müssen Sie in Java programmieren und.java-dateien anlegen. Drucken Sie diese aus und schicken Sie sie per vor Freitag, den um 8:00 Uhr an Ihre Tutorin/Ihren Tutor. Stellen Sie sicher, dass Ihr Programm von javac akzeptiert wird, ansonsten werden keine Punkte vergeben. Beachten Sie auch die Codekonventionen auf der Webseite zur Vorlesung (Verstöÿe gegen diese Konventionen können zu Punktabzügen führen). Tutoraufgabe 1 (Überladen von Methoden): Lösen Sie die folgende Aufgabe ohne Einsatz eines Computers. Bedenken Sie, dass Sie in einer Prüfungssituation ebenfalls keinen Computer zur Verfügung haben. Betrachten Sie das folgende kurze Programm: public class Ueberladen { public static int foo ( double x, char y) { return 1; public static int foo ( double x, double y) { return 2; public static int foo ( char x, long y) { return 3; public static int foo ( float... x ) { return 4; public static int foo ( float x, char y) { return 5; public static int foo ( int x, double y) { return 6; public static int foo ( int x ) { return 7; public static int foo ( double x ) { return 8; public static void main ( String [] args ) { byte x1 = ( byte ) 1; long x2 = ( long ) 2; double x3 = ( double ) 3; System. out. println ( foo (.0,.0 f )); // a) OUT : System. out. println ( foo (x2, 1L )); // b) OUT : System. out. println ( foo (x1, x2 )); // c) OUT : System. out. println ( foo (1f, 'c ' )); // d) OUT : System. out. println ( foo (1L, 'y ' )); // e) OUT : System. out. println ( foo (x3, 'z ' )); // f) OUT : System. out. println ( foo (1 )); // g) OUT : System. out. println ( foo (1 f )); // h) OUT : Geben Sie für die acht mit OUT: markierten Aufrufe von foo jeweils an, welche Ausgabe erzeugt wird. Begründen Sie Ihre Antwort. Hinweise: 1
2 Beachten Sie die Übersicht über implizite Datentypanpassung auf Folie 5 in Abschnitt II.1.2. Zahlen wie 1L mit einem L am Ende sind vom Typ long. Aufgabe 2 (Überladen von Methoden): (4 Punkte) Lösen Sie die folgende Aufgabe ohne Einsatz eines Computers. Bedenken Sie, dass Sie in einer Prüfungssituation ebenfalls keinen Computer zur Verfügung haben. Betrachten Sie das folgende kurze Programm: public class Ueberladen { public static int foo ( short x, int y) { return 1; public static int foo ( long x, char y) { return 2; public static int foo ( int x, int y) { return 3; public static int foo ( char x, double y) { return 4; public static int foo ( double x, int y) { return 5; public static int foo ( int... x ) { return 6; public static int foo ( short x ) { return 7; public static int foo ( long x ) { return 8; public static void main ( String [] args ) { long x1 = ( long ) 1; short x2 = ( short ) 2; float x3 = ( float ) 3; System. out. println ( foo (1.0, x2 )); // a) OUT : System. out. println ( foo ( 'x ', x3 )); // b) OUT : System. out. println ( foo (x2, x2 )); // c) OUT : System. out. println ( foo (x2, 1)); // d) OUT : System. out. println ( foo (x1, 1)); // e) OUT : System. out. println ( foo ( x1 )); // f) OUT : System. out. println ( foo (( byte ) x2 )); // g) OUT : System. out. println ( foo (1 )); // h) OUT : Geben Sie für die acht mit OUT: markierten Aufrufe von foo jeweils an, welche Ausgabe erzeugt wird. Begründen Sie Ihre Antwort. Hinweise: Beachten Sie die Übersicht über implizite Datentypanpassung auf Folie 5 in Abschnitt II.1.2. Tutoraufgabe 3 (Rechtecke): In dieser Aufgabe soll eine Klasse erstellt werden, mit der sich Rechtecke repräsentieren lassen. Ein solches Rechteck lässt sich mit den Koordinaten x und y für die linke obere Ecke, der Breite width und der Höhe height beschreiben, wobei x, y, width und height positive rationale Zahlen (einschlieÿlich 0) sind. Sie können für die entsprechenden Attribute den Typ double verwenden. Ihre Implementierung sollte mindestens die folgenden Methoden und Konstruktoren beinhalten. Sie sollten dabei die Konzepte der Datenkapselung berücksichtigen. In dieser Aufgabe dürfen Sie die Methoden double Math.max(double x, double y) und double Math.min(double x, double y) einsetzen, um das Maximum bzw. das Minimum von zwei double-werten zu bestimmen. Ansonsten dürfen aber keine Bibliotheksfunktionen verwendet werden. Konzentrieren Sie sich im Tutorium zuerst auf die Dokumentation mit Javadoc (Aufgabenteil e), die Konstruktoren (Teil a) und die anschlieÿend die Methoden getx(), setx (Teil b) und intersection, unity (Teil d). 2
3 a) Erstellen Sie die folgenden Konstruktoren, um Objekte des Typs Rectangle erzeugen zu können: public Rectangle ( double x, double y, double width, double height ) public Rectangle ( Rectangle rectangle ) public Rectangle () Beachten Sie dabei folgende Punkte: Der Konstruktor mit vier Parametern soll ein Rechteck erzeugen, dessen Attribute jeweils die von den entsprechenden Parametern angegebenen Werte haben. Hier muss der Aufrufer (und nicht Sie als Implementierer der Klasse Rectangle) sicherstellen, dass die Parameter keine Werte kleiner als 0.0 haben. Der Konstruktor mit einem Parameter soll ein Rechteck erzeugen, dessen Attribute die gleichen Werte haben wie die Attribute von rectangle. Hier muss der Aufrufer (und nicht Sie als Implementierer der Klasse Rectangle) sicherstellen, dass der Parameter rectangle nicht den Wert null hat. Der Konstruktor, der ohne Argumente aufgerufen wird, erstellt ein Rechteck mit Breite und Höhe 0.0 an den Koordinaten 0.0 und 0.0. b) Erstellen Sie die folgenden Selektoren, um die Koordinaten, die Breite und die Höhe eines Rechtecks setzen und auslesen zu können: public double getx () public void setx ( double x) public double gety () public void sety ( double y) public double getwidth () public void setwidth ( double width ) public double getheight () public void setheight ( double height ) c) Erstellen Sie die folgenden Methoden, mit denen man Rechtecke bearbeiten kann: public static Rectangle unity () public void move ( double x, double y) public boolean contains ( double x, double y) public void stretch ( double factor ) public double size () public Rectangle union ( Rectangle rectangle ) public Rectangle intersection ( Rectangle rectangle ) Bei den in diesem Aufgabenteil geforderten Methoden muss der Aufrufer (und nicht Sie als Implementierer der Klasse Rectangle) sicherstellen, dass die Parameter, mit denen die Methoden aufgerufen werden, nicht den Wert null haben oder negative Zahlen sind. Diejenigen Methoden, die den Rückgabetyp void haben, sollen als Seiteneekt das Objekt entsprechend ändern, für das sie aufgerufen werden. Beachten Sie dabei folgende Punkte: Ein Aufruf von unity() soll einen neues Rechteck zurückgeben, das genau 1.0 breit und hoch ist und die Koordinaten 0.0 und 0.0 hat. Die Methode move(double x, double y) soll das aktuelle Rechteck an die Koordinaten x und y verschieben. Die Methode contains(double x, double y) prüft, ob der Punkt mit den Koordinaten x und y in dem aktuellen Rechteck liegt. Die Methode stretch(double factor) soll das aktuelle Rechteck um den Faktor factor strecken. Das heiÿt, die Höhe und die Breite werden mit dem Faktor factor multipliziert. Die Methode size() gibt die Fläche des aktuellen Rechtecks zurück. 3
4 Die Methode union(rectangle rectangle) soll ein neues Rechteck zurückgeben, das durch die Vereinigung des aktuellen Rechtecks mit dem Rechteck rectangle entsteht. Hinweis: Die Vereinigung zweier Rechtecke ist das kleinste Rechteck, das die beiden anderen vollständig abdeckt. Die Methode intersection(rectangle rectangle) soll ein neues Rechteck zurückgeben, das durch den Schnitt des aktuellen Rechtecks mit dem Rechteck rectangle entsteht. Wenn die Rechtecke sich nicht überlappen, soll null zurückgeliefert werden. Hinweis: Der Schnitt zweier Rechtecke ist das gröÿte Rechteck, welches in beiden enthalten ist. d) Erstellen Sie ebenfalls Implementierungen für die folgenden Methoden: public boolean isequalto ( Rectangle rectangle ) public String tostring () public Rectangle copy () Dabei soll die Methode isequalto(rectangle rectangle) zurückgeben, ob das aktuelle Rechteck die gleich Form wie das Rechteck rectangle hat. Dabei kann rectangle auch den Wert null haben. (Zwei Rechtecke haben dieselbe Form, wenn Sie an denselben Koordinaten liegen und die Breite und die Höhe jeweils gleich sind.) Die Methode tostring() erstellt eine textuelle Repräsentation des aktuellen Rechtecks, aus der die Koordinaten, die Breite und die Höhe hervorgehen. Zum Beispiel stellt der String ( ),12.0,13.0 das Rechteck mit den Koordinaten 10.0 und 11.0 und der Breite 12.0 und Höhe 13.0 dar. Die Methode copy() erzeugt ein neues Rechteck, das eine Kopie des aktuellen Rechtecks ist. e) Dokumentieren Sie die alle ihre Methoden die als public markiert sind, indem Sie die Implementierung mit Javadoc-Kommentaren ergänzen. Diese Kommentare sollten einen allgemeine Erklärung der Methode sowie weitere Erklärungen jedes Parameters und des return-wertes enthalten. Verwenden Sie innerhalb des Kommentars dafür die Benutzen Sie das Programm javadoc, um Ihre Javadoc-Kommentare in das HTML-Format zu übersetzen. Überprüfen Sie mit einem Browser, ob das gewünschte Ergebnis generiert wurde und senden Sie die HTML-Dateien an ihren Tutor bzw. Tutorin. Bitte drucken Sie die generierten Dateien, der Umwelt zuliebe, nicht aus. Aufgabe 4 (Serveranbieter): ( = 18 Punkte) Wir beschäftigen uns in dieser Aufgabe mit Anbietern von Servern (ein Server ist ein für den Dauer-Einsatz gebauter Computer). Jeder solche Anbieter hat eine Server-Halle, in der die verschiedenen Server untergebracht sind. Diese Server werden an Kunden vermietet. Wir verwenden hierfür die Klassen Kunde, Anbieter, Server und Main, welche teilweise schon als.java-dateien existieren und auf der Homepage zur Veranstaltung zur Verfügung stehen. In der Klasse Anbieter existiert bereits ein Array vom Typ Server[], in dem die Server des Anbieters gespeichert sind. Weiterhin existiert bereits ein Attribut kontostand, in dem gespeichert ist, wieviel Geld der Anbieter eingenommen hat. Beachten Sie bei der Bearbeitung der folgenden Aufgabenteile die Prinzipien der Datenkapselung. Verwenden Sie also das Schlüsselwort public nur für die Teile der Implementierung, auf die von anderen Klassen aus zugegrien werden soll. Verwenden Sie private für die Methoden und Attribute, die nur innerhalb der jeweiligen Klasse direkt verwendet werden. a) Vervollständigen Sie die Klasse Anbieter so, dass der Standard-Konstruktor Anbieter() jedem damit erzeugten Anbieter-Objekt eine eindeutige Zahl zuordnet und speichern Sie diese Zahl in einem Attribut namens id. Das erste damit erzeugte Anbieter-Objekt soll die ID 1 bekommen, das zweite erzeugte entsprechend Objekt die ID 2,... Hinweis: Verwenden Sie ein statisches Attribut, um mitzuzählen, wie viele bzw. welche IDs bereits vergeben wurden. Sie können davon ausgehen, dass es nicht mehr als Anbieter gibt. 4
5 b) Ergänzen Sie in der Klasse Anbieter die tostring-methode an der mit TODO markierten Stelle. Der zurückgegebene String soll in der ersten Zeile einen String der folgenden Form ausgeben: (ANBIETER 5) Kontostand: Die Ausgabe enthält also in der ersten Zeile die ID des Anbieters sowie den Kontostand. c) Schreiben Sie die Klasse Main und darin die main-methode. Erzeugen Sie in dieser Methode zwei Anbieter-Objekte und geben Sie die String-Darstellung dieser Objekte auf der Konsole aus. (ANBIETER 1) Kontostand: 0.0 (ANBIETER 2) Kontostand: 0.0 d) Schreiben Sie die Klasse Kunde. Jeder Kunde soll, analog zu jedem Anbieter, einen Kontostand haben. Dieser ist anfangs immer Schreiben Sie in der Klasse Kunde eine Methode getkontostand, die den Kontostand des Kunden zurückgibt. Um ein Kunde-Objekt für den aktuellen Anbieter zu erhalten, verwenden wir die Methode neuerkunde in der Klasse Anbieter. Diese liefert ein neues Kunde-Objekt zurück, wobei im Kunde-Objekt zusätzlich zum Kontostand auch in einem weiteren Attribut gespeichert ist, wer der Anbieter des Kunden ist. Schreiben Sie diese Methode neuerkunde in der Klasse Anbieter und vervollständigen Sie auch die Klasse Kunde entsprechend (Die Klasse Kunde benötigt ein weiteres Attribut und einen geeigneten Konstruktor). e) Schreiben Sie in der Klasse Kunde eine tostring-methode. Der zurückgegebene String soll einen String der folgenden Form ausgeben: (KUNDE) Kontostand: (ANBIETER 5) Kontostand: Die erste Zeile enthält also den Kontostand, die zweite Zeile ist die String-Darstellung des Anbieters, der dem Kunden zugeordnet ist. f) Passen Sie die main-methode so an, dass drei Kunde-Objekte angelegt werden. Die ersten beiden Kunden sollen dabei zu dem ersten Anbieter gehören, der dritte Kunde zum zweiten Anbieter. Geben Sie die String-Darstellung dieser drei Objekte auf der Konsole aus. (KUNDE) Kontostand: (ANBIETER 1) Kontostand: 0.0 (KUNDE) Kontostand: (ANBIETER 1) Kontostand: 0.0 (KUNDE) Kontostand: (ANBIETER 2) Kontostand: 0.0 g) Fügen Sie in der Klasse Kunde eine Methode bezahle hinzu. Diese bekommt einen double-wert übergeben und subtrahiert diesen Betrag vom Kontostand des Kunden. Anschlieÿend ist der Kontostand des Kunden also um exakt diesen Betrag geringer. h) Damit ein Kunde einen Server bei seinem Anbieter anmieten kann, schreiben wir die Methode neuerserver in der Klasse Kunde. Diese bekommt zwei Argumente vom Typ int übergeben, wobei der erste Wert für den RAM-Ausbau des Servers (in GByte) steht. Der zweite Wert steht für den Festplattenplatz des Servers (in TByte). Implementieren Sie die Methode so, dass diese eine Methode neuerserver in der Klasse Anbieter aufruft. Diese bekommt zusätzlich zu den beiden int-argumenten auch noch das jeweilige Kunde-Objekt 5
6 übergeben und gibt als int-wert den Stellplatz des Servers beim Anbieter des Kunden zurück. Speichern Sie diesen Stellplatz in einem neuen Attribut stellplatz des Kunden, das mit 1 initialisiert ist. Das Attribut stellplatz des Kunden gibt jeweils an, welchen Server er bei seinem Anbieter angemietet hat. Implementieren Sie nun die Methode neuerserver in der Klasse Anbieter. Diese soll zuerst überprüfen, ob Platz für einen neuen Server ist (was der Fall ist, wenn ein null-eintrag im Server[]-Array existiert). Wenn dies der Fall ist, soll der Mietpreis vom Kunden bezahlt werden. Der Preis setzt sich aus 5 r + 2 p zusammen, wenn r angibt wie viele GByte RAM der Server haben soll und p angibt, wie viele TByte Festplattenplatz der Server haben soll. Falls Platz für einen neuen Server ist, muss der Kunde den entsprechenden Preis bezahlen. Schreiben Sie hierzu eine Hilfsmethode bezahle in der Klasse Anbieter, die überprüft, ob der Kunde genügend Geld auf seinem Konto hat. In diesem Fall wird das Geld beim Kunden vom Konto entfernt, beim Anbieter dem Konto hinzugefügt und die Methode bezahle liefert true zurück. Ansonsten liefert sie false. Wenn der Kunde bezahlt hat, soll das neue Server-Objekt angelegt werden und an einem freien Platz im serverhalle-array hinzugefügt werden. Implementieren Sie hierfür einen passenden Konstruktor in der Klasse Server. Bei Erfolg ist die Rückgabe der Methode der Array-Index, an dem der Server zu nden ist (was den Stellplatz in der Halle repräsentiert). Ansonsten ist die Rückgabe 1. Passen Sie in der Klasse Kunde die tostring-methode so an, dass in der zweiten Zeile der Stellplatz des angemieteten Servers mit ausgegeben wird, sofern das entsprechende Attribut nicht 1 ist. Erweitern Sie anschlieÿend die main-methode in der Klasse Main so, dass der erste Kunde einen Server mit 8 GByte RAM und 2 TByte Festplattenplatz bekommt. Der zweite Kunde soll einen Server mit 16 GByte RAM und 10 TByte Festplattenplatz bekommen, der dritte Kunde einen Server mit 192 GByte RAM und 15 TByte Festplattenspeicher. Geben Sie unmittelbar nach jedem der drei neuerserver-aufrufe auf der Konsole die String-Darstellung des jeweiligen Kunden aus. (KUNDE) Kontostand: Stellplatz: 0 (ANBIETER 1) Kontostand: 44.0 Stellplatz 0 :(SERVER) RAM: 8 GByte, Festplattenplatz: 2 TByte (KUNDE) Kontostand: Stellplatz: 1 (ANBIETER 1) Kontostand: Stellplatz 0 :(SERVER) RAM: 8 GByte, Festplattenplatz: 2 TByte Stellplatz 1 :(SERVER) RAM: 16 GByte, Festplattenplatz: 10 TByte (KUNDE) Kontostand: 10.0 Stellplatz: 0 (ANBIETER 2) Kontostand: Stellplatz 0 :(SERVER) RAM: 192 GByte, Festplattenplatz: 15 TByte i) Schreiben Sie eine Methode mehrram in der Klasse Kunde. Diese soll ein int-argument übergeben bekommen und dafür sorgen, dass nach Ausführung der Methode der Server des Kunden so viel RAM mehr hat, wie dieses Argument (in GByte) angibt. Um dies zu erreichen, schreiben und verwenden Sie die Methode mehrram in der Klasse Anbieter, welche zusätzlich ein weiteres int-argument bekommt, das den Stellplatz des Servers angibt. Zusätzlich wird ein Kunde-Objekt übergeben. In dieser Methode soll, sofern der Server an der angegebenen Stelle im serverhalle-array existiert, dem Kunden Geld für den Einbau berechnet werden. Wenn der Kunde bezahlt hat, soll die Methode mehrram in der Klasse Server aufgerufen werden, die das ram-attribut des jeweiligen Servers entsprechend erhöht. Der Betrag, den der Kunde bezahlen muss, ist 5 r, wenn r angibt, wieviele GByte RAM zusätzlich eingebaut werden sollen. Implementieren Sie für diese Teilaufgabe also in den drei Klassen Kunde, Anbieter und Server jeweils eine Methode mehrram (mit unterschiedlicher Signatur). 6
7 Erweitern Sie anschlieÿend die main-methode in der Klasse Main so, dass der erste Kunde 8 GByte zusätzlichen RAM einbauen lässt und geben Sie anschlieÿend auf der Konsole die String-Darstellung dieses Kunden aus. (KUNDE) Kontostand: Stellplatz: 0 (ANBIETER 1) Kontostand: Stellplatz 0 :(SERVER) RAM: 16 GByte, Festplattenplatz: 2 TByte Stellplatz 1 :(SERVER) RAM: 16 GByte, Festplattenplatz: 10 TByte j) Dokumentieren Sie alle ihre Klassen, Attribute und Methoden die als public markiert und nicht bereits dokumentiert sind, indem Sie die Implementierung mit Javadoc-Kommentaren ergänzen. Diese Kommentare sollten einen allgemeine Erklärung der Methode sowie weitere Erklärungen jedes Parameters und des return-wertes enthalten. Verwenden Sie innerhalb des Kommentars dafür die In der Klasse Main müssen Sie keine Dokumentation ergänzen. Benutzen Sie das Programm javadoc, um Ihre Javadoc-Kommentare in das HTML-Format zu übersetzen. Überprüfen Sie mit einem Browser, ob das gewünschte Ergebnis generiert wurde und senden Sie die HTML-Dateien an ihren Tutor bzw. Tutorin. Bitte drucken Sie die generierten Dateien, der Umwelt zuliebe, nicht aus. 7
Tutoraufgabe 1 (Überladen von Methoden):
Prof. aa Dr. J. Giesl Programmierung WS12/13 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Tutoraufgabe 1 (Überladen von Methoden): Lösen Sie die folgende Aufgabe ohne Einsatz eines Computers. Bedenken
MehrTutoraufgabe 1 (Programmanalyse):
Prof. aa Dr. M. Müller Programmierung WS15/16 C. Aschermann, J. Hensel, J. Protze, P. Reble Allgemeine Hinweise: Die Hausaufgaben sollen in Gruppen von je 3 Studierenden aus der gleichen Kleingruppenübung
MehrTutoraufgabe 1 (Programmanalyse):
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
MehrTutoraufgabe 1 (2 3 4 Bäume):
Prof. aa Dr. E. Ábrahám Datenstrukturen und Algorithmen SS Übungsblatt (Abgabe.0.0) F. Corzilius, S. Schupp, T. Ströder Allgemeine Hinweise: Die Hausaufgaben sollen in Gruppen von je bis Studierenden aus
MehrTutoraufgabe 1 (Vollständige Induktion): Tutoraufgabe 2 (Rotationen): Datenstrukturen und Algorithmen SS15 Übungsblatt 5 (Abgabe 3.6.
Prof. aa Dr. Ir. Joost-Pieter Katoen Allgemeine Hinweise: Christian Dehnert, Friedrich Gretz, Benjamin Kaminski, Thomas Ströder Die Hausaufgaben sollen in Gruppen von je - Studierenden aus der gleichen
Mehr5.4 Klassen und Objekte
5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen
MehrPIWIN 1 Übung Blatt 5
Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrProgrammierung WS12/13 Lösung - Übung 1 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder
Prof. aa Dr. J. Giesl Programmierung WS12/13 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Tutoraufgabe 1 (Syntax und Semantik): 1. Was ist Syntax? Was ist Semantik? Erläutern Sie den Unterschied. 2.
MehrAuD-Tafelübung T-B5b
6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
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
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
MehrFakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6
WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik
Mehr188.154 Einführung in die Programmierung für Wirtschaftsinformatik
Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger
MehrEinführung in die Programmierung 1
Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener
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
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung
Ludwig-Maximilians-Universität München WS 2013/14 Institut für Informatik Übungsblatt 10 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung
MehrEinführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrAufgabe 1. »Programmieren«, WS 2006/2007. Nino Simunic M.A.
»Programmieren«, WS 006/007 Nino Simunic (nino.simunic@uni-due.de) Übungsblatt 4 Aufgabe 1 OOP In dieser Aufgabe sollen Sie Autos als Klasse Car modellieren. Die Eigenschaften auf attributiver Ebene sind:
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 09: Vererbung Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil Einführung in die Vererbung Motivation Das Schlüsselwort extends Einführendes
MehrComputeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Vordefinierte Datentypen Übersicht 1 Ganzzahlige Typen 2 Boolscher Typ 3 Gleitkommatypen 4 Referenztypen 5 void Typ 6 Implizite und explizite Typumwandlungen Ganzzahlige Typen Die
MehrSichtbarkeit & statische Methoden. Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben
Sichtbarkeit & statische Methoden Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben Nicht sichtbare Methoden Wollen Eltern bestimmte Methoden vor den
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,
MehrFachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 10
Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Übungsblatt Nr. 10 Aufgabe 20: Code Verständnis Löse diese Aufgabe selbständig als Vorbereitung zur Übung auf dem Papier. a) Gib
MehrÜbersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung
Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des
MehrEinfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
MehrEinführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrGrundlagen Programmierung
1. Aufgabe (Spielen mit Objekten) Gegeben sei der auch von der Veranstaltungsseite erhältliche Programmcode auf der rechten Seite, der im Detail zuerst nicht verstanden werden muss. a) Erzeugen Sie sich
MehrKlassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg
Klassen und Objekte Einführung in Java Folie 1 von 28 12. Mai 2011 Ivo Kronenberg Inhalt Objekte Klassendefinitionen Datenelemente (Klassenattribute) Instanzieren von Objekten Konstruktoren Vergleich primitive
MehrAlgorithmen und Datenstrukturen 07
5. Dezember 2011 1 Besprechung Blatt 6 Fragen 2 Vererbung Allgemein abstract Interfaces 3 Unified Modeling Language (UML) Ablaufdiagramme Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung Blatt 7
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen
MehrSie müssen den Test bis 20:00 Uhr am Abgabetag dieses Übungszettels absolviert haben.
Informatik I Wintersemester 2013/14 Prof. Dr. Carsten Damm Georg-August-Universität Göttingen Dr. Henrik Brosenne Institut für Informatik Übung 6 Abgabe bis Dienstag, 10.12., 18:00 Uhr. Werfen Sie Ihre
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){
MehrKlausur zur Vorlesung: Einführung in die objektorientierte Programmierung mit Java WS1415
Klausur zur Vorlesung: Einführung in die objektorientierte Programmierung mit Java WS1415 Alexander Bazo 19. Februar 2015 Allgemeine Hinweise 1. Die Bearbeitungszeit beträgt 60 Minuten. Sie könne 50 Punkte
MehrNachholklausur (6 ECTS) Einführung in die Informatik: Programmierung und Software-Entwicklung. Nachname... Vorname... Matrikelnummer... Studienfach...
Ludwig-Maximilians-Universität München WS 2012/13 Institut für Informatik 19.04.2013, 12:00 14:00 Uhr Prof. Dr. R. Hennicker, A. Klarl Nachholklausur (6 ECTS) Einführung in die Informatik: Programmierung
MehrTutorium Java Ein Überblick. Helge Janicke
Tutorium Java Ein Überblick Helge Janicke 26. Oktober 2000 1 VORRAUSSETZUNGEN ZUM PROGRAMMIEREN MIT JAVA. 1 1 Vorraussetzungen zum Programmieren mit Java. Was braucht man, wenn man mit Java programmieren
MehrTeilprüfung Software- und Internettechnologie Programmierkurs 1 Wintersemester 2005/2006
Universität Mannheim Fakultät für Mathematik und Informatik Dr. Heinz Kredel Teilprüfung Software- und Internettechnologie Programmierkurs 1 Wintersemester 2005/2006 Name:.................................
MehrHochschule Augsburg, Fakultät für Informatik Name:... Prüfung "Programmieren 1", IN1bac, WS 10/11 Seite 1 von 6
Prüfung "Programmieren 1", IN1bac, WS 10/11 Seite 1 von 6 Datum, Uhrzeit: 24. 01. 2011, 10.30 Uhr Semester: IN1 Note:... Prüfer: Prof. Meixner Dauer: 60 Min. Hilfsmittel: keine Punkte:... Diese Prüfung
MehrÜbungen zur Vorlesung EidP (WS 2015/16) Blatt 6
Andre Droschinsky Ingo Schulz Dortmund, den 0. Dezember 2015 Übungen zur Vorlesung EidP (WS 2015/16) Blatt 6 Block rot Es können 4 + 1 Punkte erreicht werden. Abgabedatum: 10. Dezember 2015 2:59 Uhr Hinweise
MehrUniversität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger
Universität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger Informatik II Hinweise: Die Bearbeitungszeit beträgt 90
MehrKapitel 6. Vererbung
Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen
Mehr5. Tutorium zu Programmieren
5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrSoftware Engineering Klassendiagramme Einführung
Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt
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
MehrKlassen mit Instanzmethoden
Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 3.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 3.12.07
MehrObjektorientierte Programmierung
Stefan Brass: OOP (Java), 15. Überladene Methoden 1/22 Objektorientierte Programmierung Kapitel 15: Überladene Methoden Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2013/14 http://www.informatik.uni-halle.de/
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 8. Arrays. Arrays
1 Kapitel 8 Ziele 2 Die Datenstruktur der kennenlernen Grundlegende Algorithmen auf in Java implementieren können Mit von Objekten arbeiten können 3 Erweiterungen zur Behandlung von : Überblick Bisher
MehrArrays Fortgeschrittene Verwendung
Arrays Fortgeschrittene Verwendung 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 Arrays: Wiederholung
MehrFakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012
WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **
MehrLetztes Mal. static int ggt(int a, int b) { if (a == b) return a; else if (a > b) return ggt(a-b,b); else if (a < b) return ggt(a,b-a);
Letztes Mal static int ggt(int a, int b) { if (a == b) return a; else if (a > b) } return ggt(a-b,b); else if (a < b) return ggt(a,b-a); Darf hier nicht stehen! Compiler sagt: Missing return statement
MehrProgrammieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek
Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es
MehrJavakurs 2013 Objektorientierung
Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
MehrTutoraufgabe 1 (Datenstrukturen in Haskell):
Prof. aa Dr. J. Giesl Programmierung WS12/13 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Allgemeine Die Hausaufgaben sollen in Gruppen von je 2 Studierenden aus der gleichen Kleingruppenübung (Tutorium)
MehrInstitut für Informatik
Technische Universität München Institut für Informatik Lehrstuhl für Computer Graphik & Visualisierung WS 2010 Praktikum: Grundlagen der Programmierung Aufgabenblatt 1 Prof. R. Westermann, A. Lehmann,
MehrJava Einführung Methoden. Kapitel 6
Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden
MehrEin erstes Java-Programm
Ein erstes Java-Programm public class Rechnung { public static void main (String [] arguments) { int x, y; x = 10; y = -1 + 23 * 33 + 3 * 7 * (5 + 6); System.out.print ("Das Resultat ist "); System.out.println
MehrPrimitive Datentypen
Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.
MehrEinführung in die Programmierung Lösungen P. Fierz / HS 2011/2012
Kapitel 2 Objekte und Klassen Aufgabe 2.1 [Klassen und Objekte] Erklären Sie den Unterschied zwischen einem Objekt und einer Objektreferenz. Ein Objekt enthält Informationen über den Zustand eines Objektes.
MehrEinführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005
Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der
MehrFachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6
Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Anmeldung zur Klausur! Übungsblatt Nr. 6 Um an der Klausur teilzunehmen, müssen sich Studierende der angewandten Informatik in
MehrInstitut fu r Informatik
Technische Universita t Mu nchen Institut fu r Informatik Lehrstuhl fu r Bioinformatik Einfu hrung in die Programmierung fu r Bioinformatiker Prof. B. Rost, L. Richter Java, Objektorientierung 5.1 (U )
MehrÜbungsblatt 3: Algorithmen in Java & Grammatiken
Humboldt-Universität zu Berlin Grundlagen der Programmierung (Vorlesung von Prof. Bothe) Institut für Informatik WS 15/16 Übungsblatt 3: Algorithmen in Java & Grammatiken Abgabe: bis 9:00 Uhr am 30.11.2015
MehrPraktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben
Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt
MehrBetreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung
SS 2011 Fakultät für Angewandte Informatik Lehrprofessur für Informatik 15.06.2011 Prof. Dr. Robert Lorenz Betreutes Programmieren Vorlesung Informatik II, Blatt 7 Musterlösung Programmieraufwand für geübte
MehrWiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung
Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrInstitut für Programmierung und Reaktive Systeme 26. April 2013. Programmieren II. 10. Übungsblatt
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 26. April 2013 Programmieren II 10. Übungsblatt Hinweis: Insgesamt werden in diesem Semester fünf
MehrVorlesung Informatik II
Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm
MehrProgrammierung für Mathematik HS12 Übung 3
Programmierung für Mathematik HS12 Übung 3 14. Oktober 2012 1 Aufgabe: Code verstehen 1.1 Ziele Präzedenz verstehen. If else kennen lernen. 1.2 Aufgabenstellung 1.2.1 Präzedenz Lesen Sie folgende Codeaussschnitte.
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
Mehr6 Speicherorganisation
Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrProgrammieren I + II Regeln der Code-Formatierung
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme WS 2016/2017, SS 2017 Programmieren I + II Regeln der Code-Formatierung In diesem Dokument finden
Mehr5.5.8 Öffentliche und private Eigenschaften
5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung
MehrInstitut fu r Informatik
Technische Universita t Mu nchen Institut fu r Informatik Lehrstuhl fu r Bioinformatik Einfu hrung in die Programmierung fu r Bioinformatiker Prof. B. Rost, L. Richter WS 2013 Aufgabenblatt 3 18. November
MehrProbeklausur: Einführung in die objektorientierte Programmierung mit Java 15WS
Probeklausur: Einführung in die objektorientierte Programmierung mit Java 15WS Alexander Bazo 26. Januar bis 2. Februar 2016 Allgemeine Hinweise 1. Die Bearbeitungszeit beträgt 60 Minuten. Sie könne 50
MehrObjektorientierte Programmierung
Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Übungsblatt 5 Lösungsvorschlag Objektorientierte Programmierung 22. 05. 2006 Lösung 9 (SMS-Eingabe am
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrWelche Informatik-Kenntnisse bringen Sie mit?
Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt
MehrArrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Arrays: Wiederholung Ein Array ist ein Tupel von Elementen gleichen
MehrTestklausur 1 zur Vorlesung. Modellierung und Programmierung I. Dr. Monika Meiler Zeit: 60 Minuten
Matrikelnummer: Punkte: Testklausur 1 zur Vorlesung Modellierung und Programmierung I Dr. Monika Meiler Zeit: 60 Minuten Bemerkungen: Jedes Blatt ist mit der Matrikelnummer zu versehen. Jede Aufgabe ist
MehrÜberschreiben von Methoden
Vergleich der DoME Realisierungen: Methode ausgeben Version 1 (ohne Vererbung): Anzeigen aller Informationen CD: A Swingin Affair (64 Min)* Frank Sinatra Titelanzahl: 16 Mein Lieblingsalbum von Sinatra
MehrÜbung Programmierung WS 2007/08 - Blatt 5
RHEINISCH- WESTFÄLISCHE TECHNISCHE HOCHSCHULE AACHEN LEHR- UND FORSCHUNGSGEBIET INFORMATIK 2 RWTH Aachen D-52056 Aachen GERMANY http://programmierung.informatik.rwth-aachen.de LuFG Informatik II Prof.
MehrProf. W. Henrich Seite 1
Klasse - ist ein benutzerdefinierter Datentyp (Referenztyp) - hat Datenelemente - hat Methoden - Konstruktor ist spezielle Methode zum Erstellen eines Objektes vom Typ der Klasse (Instanz) - jede Klasse
MehrProgrammieren in C++ Überladen von Methoden und Operatoren
Programmieren in C++ Überladen von Methoden und Operatoren Inhalt Überladen von Methoden Überladen von Operatoren Implizite und explizite Konvertierungsoperatoren 7-2 Überladen von Methoden Signatur einer
MehrProgrammieren Tutorium
Programmieren Tutorium Tom Schildhauer Tutorium 12 Universität Karlsruhe (TH) Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by Tom Schildhauer,
MehrJava Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
Mehr620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE
Mehr1 Polymorphie (Vielgestaltigkeit)
1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen
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
MehrJava Einführung VARIABLEN und DATENTYPEN Kapitel 2
Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen
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,
MehrObjekte und Klassen. Objekte, Klassen, Felder und Methoden, Ergebnistyp, Parameter, Signatur, Kommentare, Javadoc
Objekte und Klassen Objekte, Klassen, Felder und Methoden, Ergebnistyp, Parameter, Signatur, Kommentare, Javadoc Algorithmen Algorithmen sind Handlungsanweisungen beispielsweise um ein Essen zu kochen
Mehr13. Tutorium zu Programmieren
13. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2009 by IPD Snelting
MehrÜbung 1: Object Inspector
Übung 1: Object Inspector Es ist ein System zu entwickeln, mit dem man Objektstrukturen bezüglich ihrer Properties analysieren und dann in einem Tree Viewer (JTree) anzeigen und bearbeiten kann. Properties
Mehr