IT I: Heute. Interfaces Interfaces List, Set und Collection HashCode HashSet. Projekt Filialenbelieferung Fehler und Debugging Modularisierung
|
|
- Andrea Haupt
- vor 5 Jahren
- Abrufe
Transkript
1 IT I: Heute Interfaces Interfaces List, Set und Collection HashCode HashSet Projekt Filialenbelieferung Fehler und Debugging Modularisierung IT I - VO 7 1
2 WÜ: Vererbung Attribute aus der Oberklasse werden in Unterklasse nicht nochmals angelegt! Zum Aufruf super(...); im Konstruktor der Unterklasse muss es in der Oberklasse passenden Konstruktor geben! IT I - VO 7 2
3 Abstrakte Methoden und Klassen Eine abstrakte Methode ist die Definition einer Methode ohne Implementierung: abstract String getdetails(); Eine Klasse mit einer abstrakten Methode muss selbst abstrakt sein: abstract class Disk { } Von einer abstrakten Klasse können keine Objekte erzeugt werden (da u.u. manche Methoden nicht implementiert sind). In einer nicht-abstrakten Unterklasse einer abstrakten Klasse muss es für alle abstrakten Methoden Implementierungen geben IT I - VO 7 3
4 Java interfaces Interfaces sind eine besondere Form von abstrakten Klassen: Alle Methoden sind public und abstract. Es gibt keine Konstruktoren. Es gibt keine Attribute außer Konstantendefinitionen, die public, static und final sind. D.h., dass eine nicht-abstrakte Unterklasse eines Interfaces alle Methoden des Interfaces implementieren muss. Insofern ist ein Interface eine Spezifikation, die angibt, über welche Methoden eine Objekt dieses Typs verfügt IT I - VO 7 4
5 Syntax von Java interfaces (1) interface Interfacename { } class Klassenname implements Interfacename { } IT I - VO 7 5
6 ArrayList implementiert Interface List IT I - VO 7 6
7 List Gegeben: List<Anlage> liste; kann alle Methoden aus dem Interface List verwenden: - get(i) - for each Schleife - size() - etc IT I - VO 7 7
8 List Rückgabewert List<Anlage>: muss Objekt einer Klasse zurückgeben, das List implementiert, z.b. ArrayList List<Anlage> = new ArrayList<Anlage>(); oder ArrayList<Anlage> = new ArrayList<Anlage>(); IT I - VO 7 8
9 Interfaces Interfaces können ganz normal als Datentyp eingesetzt werden, s. Bspe. mit Interface List! Weiteres Beispiel: interface eininterface { public boolean istdoof(); } eininterface x =...; if(x.istdoof()){...} NB: Konkrete Objekte (z.b. rechte Seite der Zuweisung x=...;) sind immer von einer Klasse, die das Interface implementiert! IT I - VO 7 9
10 Mehrfachvererbung IT I - VO 7 10
11 Mehrfachvererbung Wenn eine Klasse von mehreren Oberklassen erbt, kann es zu Konflikten kommen, wenn dieselbe Methode in mehreren Oberklassen unterschiedlich implementiert ist. Welche Methode wird ausgeführt? In Java wird dieser Konflikt vermieden, indem es nur eine echte Oberklasse geben kann, alle anderen Oberklassen müssen Interfaces sein. Da es in Interfaces keine Implementierung gibt, kommt es zu keinen Konflikten IT I - VO 7 11
12 Syntax von Java interfaces (2) interface Interfacename implements Interface1,, InterfaceK { } class Klassenname extends Oberklasse implements Interface1,, InterfaceK { } IT I - VO 7 12
13 Collections (1) Hold groups of objects. Increase their capacity as necessary. Keep the objects in (some) order. Details of how all this is done are hidden. We specify: the type of a collection: e.g. ArrayList the type of the objects it will contain: e.g. <String> Collections are defined in java.util IT I - VO 7 13
14 Collections (2) Die Gemeinsamkeiten von Collections sind im Interface Collection definiert. Wichtige Sub-Interfaces von Collection sind List und Set. Konkrete (nicht-abstrakte) Unterklassen von List sind ArrayList und LinkedList, sowie HashSet und TreeSet von Set. Die wesentlichen Methoden für eine Liste sind im Interface List definiert, und daher für ArrayList und LinkedList gleich IT I - VO 7 14
15 Sets Sets sind Collections: add() size() for each Schleife Achtung: Für Set gibt's keine get-methode! (Zugriff nur über for each Schleife!) IT I - VO 7 15
16 Sets Unterschiede zwischen List und Set: List enthält eine Sequenz von Objekten. Objekte können öfters vorkommen. Set enthält Objekte in keiner bestimmten Reihenfolge (keine get-methode!) Spez. Implementierungen existieren, die eine spezielle Reihenfolge der Objekte einhalten. In Set kommt ein Objekt nur einmal vor IT I - VO 7 16
17 HashSet Benötigt eine korrekte Implementierung der Methode public int hashcode() in java.lang.object. Die Methode hashcode() gibt im wesentlichen an, wo ein Objekt in einem HashSet gespeichert wird IT I - VO 7 17
18 hashcode() Um sicherzustellen, dass gleiche Objekte korrekt aufgefunden werden, müssen zwei gleiche Objekte, d.h. x.equals(y) == true, auch den gleichen Hashcode haben, x.hashcode() == y.hashcode(). (Die Umkehrung muss/kann i.a. nicht gelten!!!) IT I - VO 7 18
19 hashcode() Auch für andere Bibliotheksklassen muss hashcode() korrekt implementiert sein. Überschreiben von equals() erfordert das Überschreiben von hashcode()! Eine neue hashcode()-methode verwendet in der Regel die Attribute, die von equals() verwendet werden. z.b.: Kombination der Hashcodes der Attribute mit XOR(^): a1.hashcode() ^ a2.hashcode() ^ a3.hashcode() für Attribute a1, a2, a IT I - VO 7 19
20 public boolean equals(object obj) Eine weitere Methode, die in Object definiert (und implementiert) ist. equals() soll true liefern, wenn das Objekt, für das equals() aufgerufen, gleich dem übergebenen Objekt obj ist. Daher sollte equals() die folgenden Eigenschaften haben: obj.equals(obj) == true obj1.equals(obj2) == obj2.equals(obj1) Wenn obj1.equals(obj2)==true und obj2.equals(obj3)==true dann auch obj1.equals(obj3)==true. Das Ergebnis von obj1.equals(obj2) sollte sich nicht verändern, wenn obj1 und obj2 unverändert bleiben. obj.equals(null) == false IT I - VO 7 20
21 Überschreiben von equals() equals(object obj) ist für beliebige Objekte als Argumente definiert. In einer überschreibenden equals()-methode ist in der Regel ein Überprüfen der Klasse von obj und ein Casting notwendig. obj instanceof eineklasse Liefert true, wenn obj ein Objekt von eineklasse ist IT I - VO 7 21
22 Testing and debugging Eliminate errors by avoiding them in the first place. Carefully design classes, algorithms and methods. Carefully code everything into Java. Test your program with appropriate test cases (some where the answer is known), discover and fix any errors, then retest IT I - VO 7 22
23 Errors Eliminating errors is called debugging. An error in a program is called a bug. Three kinds or errors Compile errors Runtime errors Logical errors IT I - VO 7 23
24 Compile Errors/Syntax errors Grammatical mistakes in a program. The grammatical rules for writing a program are very strict. The compiler catches such errors and prints an error message. Examples: Using a period instead of a comma. Calling a method which is not defined IT I - VO 7 24
25 Runtime Errors Errors that are detected when your program is running, but not during compilation. When the computer detects an error, it terminates the program and prints an error message. Examples: Division by 0 Null pointer reference Index out of bounds IT I - VO 7 25
26 Logical Errors Errors that are not detected during compilation or while running, but which cause the program to produce incorrect results. These are the errors which are hard to find. Programs need to be tested to find such errors IT I - VO 7 26
27 Unit testing Each unit (class, method, constructor) of a program may (and should!) be tested. Finding and fixing errors in units early is much easier than debugging a whole program. For testing you need to understand what the unit should do. You will be looking for violations. One typical kind of error is the incorrect handling of boundary cases: First/last iteration of a loop First/last element of an array Minimal/maximal values Empty/full list IT I - VO 7 27
28 The art and craft of testing Errors are a fact of life in programs. Testing and debugging skills are essential. Make testing a habit. Practice debugging skills. Good testing is a creative process: Which test cases? Build a set of test cases for your units. Rerun the test when the unit is changed (regression testing). Automate testing where possible. Use of test units/test classes. Creativity is focused on creating the test classes IT I - VO 7 28
29 Specific testing and debugging techniques Use the debugger to view the program execution. Add extra print statements to your program to get information about the execution. Manual walkthrough Verbal walkthrough IT I - VO 7 29
30 Manual walkthrough Get away from the computer and run the program by hand. Tabulate object states (attribute values) An object s behavior is usually determined by its state. Incorrect behavior is often the result of an incorrect state. Document state changes after method calls IT I - VO 7 30
31 Verbal walkthroughs Explain to someone else what the code is doing. They might spot the error. The process of explaining might help you to spot it for yourself IT I - VO 7 31
32 clock-display IT I - VO 7 32
33 Spezifikation eines Moduls NumberDisplay Ein Konstruktor, der die Obergrenze für den Zähler definiert, bei der der Zähler wieder auf 0 springt. Eine Methode void increment(), die den Zähler um eins erhöht. Eine Methode int getvalue(), die den Wert des Zählers zurückliefert. Eine Methode void setvalue(int replacementvalue), die den Zähler auf einen bestimmten Wert setzt. Eine Methode String getdisplayvalue(), die den Wert des Zählers als 2-stelligen String zurückliefert IT I - VO 7 33
34 clock-display Spezifikation Stellt die Uhrzeit in digitaler Form dar. Es gibt eine Methode void settime(int hour, int minute), zum Einstellen der Uhrzeit. Es gibt eine Methode void timetick(), die die Uhr um eine Minute vorrückt IT I - VO 7 34
35 Abstraktion Abstraktion sieht über Details hinweg und konzentriert sich auf die Gemeinsamkeiten, die dann sichtbar werden. Projekt clock-display: Die Minutenanzeige zählt von Die Stundenanzeige zählt von Gemeinsamkeit: Ein Zähler, der von 0 bis zu einem Höchstwert zählt, und dann wieder auf 0 springt IT I - VO 7 35
36 Modularisierung clock-display One four-digit display? Or two two-digit displays? IT I - VO 7 36
37 clock-display Objektdiagramm IT I - VO 7 37
IT I: Heute. abstrakte Methoden und Klassen. Interfaces. Interfaces List, Set und Collection IT I - VO 7 1
IT I: Heute abstrakte Methoden und Klassen Interfaces Interfaces List, Set und Collection 22.11.2018 IT I - VO 7 1 Wissensüberprüfung Überschreiben von Methoden: Aufruf der Methode der Oberklasse ist oft
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
MehrIT I: Heute. Klasse Object. equals, hashcode, tostring. HashSet IT I - VO 6 1
IT I: Heute Klasse Object equals, hashcode, tostring HashSet 13.11.2018 IT I - VO 6 1 Organisatorisches Wissensüberprüfung gleich im Anschluss an die VO UE heute schon früher (ab 11:45) heute beide UE-Gruppen
MehrHeute. Organisatorisches Nachbetrachtung Zwischentest
Heute Organisatorisches Nachbetrachtung Zwischentest TreeMap Mehrdimensionale Arrays Generische Klassen Enumeration types Exceptions und Errors Input/Output in Files etc. 10.01.2017 IT I - VO 10 1 Restlicher
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
MehrInstitut für Programmierung und Reaktive Systeme. Java 7. Markus Reschke
Institut für Programmierung und Reaktive Systeme Java 7 Markus Reschke 14.10.2014 Vererbung in Java Vererbung ermöglicht es, Klassen zu spezialisieren Wiederverwendung vorhandener Klassen Kindsklasse erhält
MehrVorkurs Informatik WiSe 15/16
Java 7 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 21.10.2015 Technische Universität Braunschweig, IPS Überblick OO in Java Vererbung Abstrakte Klassen und Interfaces 21.10.2015 Dr. Werner Struckmann
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
MehrInformatik II Übung 6
Informatik II Übung 6 Gruppe 2 Carina Fuss cfuss@student.ethz.ch 11.4.2018 Carina Fuss 11.4.2018 1 Übung 6 Nachbesprechung Übung 5 Objektorientierung Vererbung, Polymorphie, abstrakte Klassen, Interfaces,
MehrWeather forecast in Accra
Weather forecast in Accra Thursday Friday Saturday Sunday 30 C 31 C 29 C 28 C f = 9 5 c + 32 Temperature in Fahrenheit Temperature in Celsius 2 Converting Celsius to Fahrenheit f = 9 5 c + 32 tempc = 21
MehrHeute. Algorithmisches Denken. Interface Map. Projekt Scheduling IT I - VO 8 1
Heute Algorithmisches Denken Interface Map Projekt Scheduling 29.11.2018 IT I - VO 8 1 Organisatorisches Übungsablauf: Einsichtnahme in die Korrekturen der Wissensüberprüfung im Anschluss an die Besprechung
MehrObjektorientierung III
Lehrstuhl für Bioinformatik Einführung in die Programmierung für Bioinformatiker Prof. B. Rost, Dr. L. Richter Blatt 10 9.1.2017 Objektorientierung III Aufgabe 10.1. Wir sind doch alle gleich In der Vorlesung
Mehr12 Abstrakte Klassen, finale Klassen und Interfaces
12 Abstrakte Klassen, finale Klassen und Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält,
MehrPolymorphie. 15. Java Objektorientierung II
432 Polymorphie 15. Java Objektorientierung II Objektorientierung: Verschiedene Aspekte 433 Daten Typhierarchie Objekte Code Vererbung Unter- und Oberklassen Methoden überschreiben Unterklassen zuweisen
MehrJava Tools JDK. IDEs. Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation
Java Tools JDK http://www.oracle.com/technetwork/java/javase/ Downloads IDEs Java SE 8 Java SE 8 Documentation Eclipse http://www.eclipse.org IntelliJ http://www.jetbrains.com/idea/ NetBeans https://netbeans.org/
MehrProgrammierkurs Java
Programmierkurs Java Java Generics und Java API (1/2) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer Datenstrukturen In vielen Sprachen
MehrPolymorphie. 15. Java Objektorientierung II
446 Polymorphie 15. Java Objektorientierung II Objektorientierung: Verschiedene Aspekte 447 Daten Typhierarchie Objekte Code Vererbung Unter- und Oberklassen Methoden überschreiben Unterklassen zuweisen
Mehr4. Vererbung Die Klasse Object. Die Klasse Object
4. Vererbung Die Klasse Object Die Klasse Object Alle Klassen ohne explizit deklarierte Superklasse haben die Klasse Object als Superklasse. Object gehört zum Paket java.lang. Object verfügt über einige
MehrII.4.4 Exceptions - 1 -
n 1. Unterklassen und Vererbung n 2. Abstrakte Klassen und Interfaces n 3. Modularität und Pakete n 4. Ausnahmen (Exceptions) n 5. Generische Datentypen n 6. Collections II.4.4 Exceptions - 1 - Ausnahmen
MehrTagesprogramm
1 2015-12-14 Tagesprogramm Methoden von Object tostring instanceof, class, getclass und Cast equals und hashcode 2 2015-12-14 Methoden von Object Object java.lang.object ist die oberste Oberklasse aller
MehrSoftwaretechnik WS 16/17. Übungsblatt 01
Softwaretechnik WS 16/17 Übungsblatt 01 Was ist eine Klasse? Definition der Object Management Group: A class describes a set of objects that share the same specifications of features, constraints, and
MehrVererbung und Polymorphie
Vererbung und Polymorphie Marc Satkowski, Sascha Peukert 29. September 2016 C# Kurs Gliederung 1. Methodenüberladung 2. Vererbung Polymorphie Methoden- & Eigenschaftsüberschreibung Weitere Schlüsselwörter
MehrPropädeutikum Programmierung in der Bioinformatik
Propädeutikum Programmierung in der Bioinformatik Java Collections Thomas Mauermeier 15.01.2019 Ludwig-Maximilians-Universität München Collections? Was ist eine Collection? Container für mehrere Objekte
MehrObjektorientierte PL/SQL-Entwicklung Ein Erfahrungsbericht aus Sicht von JAVA-Entwicklern
Thema Objektorientierte PL/SQL-Entwicklung Ein Erfahrungsbericht aus Sicht von JAVA-Entwicklern Referent: Frank Sanders Seite 1 Inhalt Der Vortrag hat einen sehr kurzen Einleitungsteil der sich mit Objektorientierung
MehrDie abstrakte Klasse Expression:
Die abstrakte Klasse Expression: Expression abstract evaluate() Add Neg Const 501 Die abstrakte Klasse Expression: Expression abstract evaluate() Add Neg Const Leider (zum Glück?) lässt sich nicht die
MehrAccelerating Information Technology Innovation
Accelerating Information Technology Innovation http://aiti.mit.edu Ghana Summer 2011 Lecture 05 Functions Weather forecast in Accra Thursday Friday Saturday Sunday 30 C 31 C 29 C 28 C f = 9 5 c + 32 Temperature
Mehr7. Schnittstellen Grundlagen zu Schnittstellen. 7. Schnittstellen
7. Schnittstellen Grundlagen zu Schnittstellen 7. Schnittstellen Eine Schnittstelle (Interface) ist eine Spezifikation eines Typs in Form eines Typnamens und einer Menge von Methoden, die keine Implementierungen
MehrWeitere Beispiele. Beispiel CD-Spieler: Exemplare eines abstrakten Konzepts. 7. Schnittstellen. Schnittstelle: Syntax
Weitere Beispiele Beispiel CD-Spieler: Exemplare eines abstrakten Konzepts public interface Funktion { boolean istimdefbereich(double x); double wert(double x); String gibbeschreibung(); public interface
MehrTeil 2-3. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-3. Vorlesung Modul: Programmierung B-PRG Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 Wrapper-Klassen Alle primitive Datentypen haben eine
MehrWer bin ich - und wenn ja wie viele?: Eine philosophische Reise. Click here if your download doesn"t start automatically
Wer bin ich - und wenn ja wie viele?: Eine philosophische Reise Click here if your download doesn"t start automatically Wer bin ich - und wenn ja wie viele?: Eine philosophische Reise Wer bin ich - und
MehrIT I: Heute. Nachbetrachtung Wissensüberprüfung. Einführung Vererbung. Roboter in becker.robots. Filialenbelieferung 4.11.
IT I: Heute Nachbetrachtung Wissensüberprüfung Einführung Vererbung Roboter in becker.robots Filialenbelieferung 4.11.2014 IT I - VO 4 1 Organisatorisches Tutorium am Mi, 12.11. schon um 11 Uhr (bis 12:30).
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
MehrIT I: Heute. Nachbetrachtung Wissensüberprüfungen. Einführung Vererbung. Roboter in becker.robots. falls Zeit: Scheduling 8.11.
IT I: Heute Nachbetrachtung Wissensüberprüfungen Einführung Vererbung Roboter in becker.robots falls Zeit: Scheduling 8.11.2016 IT I - VO 5 1 Organisatorisches VO nächste Woche im Peter-Tunner-HS! Tutorium
MehrMocking Libraries Shootout
Mocking Libraries Shootout Warum ist Mocking interessant? Ermöglicht Tests ohne echte Testumgebung Schnelle Tests durch gute Test-Isolation Kontrolle des indirekten Inputs Simulation von Fehlern Überprüfung
MehrJava I Vorlesung 6 Referenz-Datentypen
Java I Vorlesung 6 Referenz-Datentypen 7.6.2004 Referenzen this, super und null Typkonvertierung von Referenztypen Finale Methoden und Klassen Datentypen in Java In Java gibt es zwei Arten von Datentypen:
MehrInterfaces und Vererbung
Interfaces und Vererbung Einführung in Java Folie 1 von 31 12. Mai 2011 Ivo Kronenberg Inhalt Interfaces Statische und dynamische Typen Visiblitätsmodifier Vererbung Überschreiben von Methoden Konstruktoren
MehrInfo B VL 14: Java Collections/Reflections
Info B VL 14: Java Collections/Reflections Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 14: Java Collections/Reflections
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
MehrÜbung 3: VHDL Darstellungen (Blockdiagramme)
Übung 3: VHDL Darstellungen (Blockdiagramme) Aufgabe 1 Multiplexer in VHDL. (a) Analysieren Sie den VHDL Code und zeichnen Sie den entsprechenden Schaltplan (mit Multiplexer). (b) Beschreiben Sie zwei
MehrDIBELS TM. German Translations of Administration Directions
DIBELS TM German Translations of Administration Directions Note: These translations can be used with students having limited English proficiency and who would be able to understand the DIBELS tasks better
MehrJava Idioms. Basic und Advanced Java Coding Style. Prof. Dr. Nikolaus Wulff
Java Idioms Basic und Advanced Java Coding Style Prof. Dr. Nikolaus Wulff Java Idiome Operator == versus equals Methode equals und hashcode Vermeide NullPointer Java Konstruktoren Function Pointers, Interfaces
MehrJavakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren
MehrJava Grundlagen 2 - OOP
Institut für Programmierung und Reaktive Systeme Java Grundlagen 2 - OOP Markus Reschke 20.08.2014 Eine kleine Geschichte 1 Spezifikation Es sollen Formen in einer GUI angezeigt werden: Ein Quadrat, ein
MehrEnglisch-Grundwortschatz
Englisch-Grundwortschatz Die 100 am häufigsten verwendeten Wörter also auch so so in in even sogar on an / bei / in like wie / mögen their with but first only and time find you get more its those because
MehrHTW IMI-B Informatik 1 Kara Worksheet 2 Seite: 1. Variables to store a true/false state: boolean movingright = true;
HTW IMI-B Informatik 1 Kara Worksheet 2 Seite: 1 You will need these Java constructs for the following exercises: Variables to count things: int zaehler = 0; Variables to store a true/false state: boolean
MehrMagic Figures. We note that in the example magic square the numbers 1 9 are used. All three rows (columns) have equal sum, called the magic number.
Magic Figures Introduction: This lesson builds on ideas from Magic Squares. Students are introduced to a wider collection of Magic Figures and consider constraints on the Magic Number associated with such
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
MehrInfo B VL 11: Innere Klassen/Collections
Info B VL 11: Innere Klassen/Collections Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 11: Innere Klassen/Collections
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 11: 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
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
MehrIm Fluss der Zeit: Gedanken beim Älterwerden (HERDER spektrum) (German Edition)
Im Fluss der Zeit: Gedanken beim Älterwerden (HERDER spektrum) (German Edition) Ulrich Schaffer Click here if your download doesn"t start automatically Im Fluss der Zeit: Gedanken beim Älterwerden (HERDER
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
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
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)
MehrNachtragstest in Programmkonstruktion 1. Phase. 1. Multiple-Choice-Aufgaben
Nachtragstest in Programmkonstruktion 1. Phase 29.5 / 60 Punkte 1. Multiple-Choice-Aufgaben 14.5 / 24 Punkte Bitte wählen Sie alle zutreffenden Antwortmöglichkeiten aus. Es können beliebig viele Antwortmöglichkeiten
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG GRUNDLAGEN Tobias Witt!! 24.03.2014 ORGANISATORISCHES 09:00-10:30! Täglich Übungen zur Vertiefung! Laptop hier nicht erforderlich! Linux, OS X! Freitag: http://hhu-fscs.de/linux-install-party/
MehrGrundlagen der Programmierung in C Klassen
Grundlagen der Programmierung in C Klassen Wintersemester 2005/2006 G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Das C++ Typsystem simple address pointer reference structured integral
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
MehrNumber of Maximal Partial Clones
Number of Maximal Partial Clones KARSTEN SCHÖLZEL Universität Rostoc, Institut für Mathemati 26th May 2010 c 2010 UNIVERSITÄT ROSTOCK MATHEMATISCH-NATURWISSENSCHAFTLICHE FAKULTÄT, INSTITUT FÜR MATHEMATIK
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces
Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse
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
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:
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces. Auswertung von Ausdrücken. Beispiel. Abstrakte Methoden und Klassen
Auswertung von Ausdrücken Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt.
MehrProgrammierung Nachklausurtutorium
Programmierung Nachklausurtutorium Laryssa Horn, Tim Engelhardt 20 März 2018 Klassen Wofür wir Klassen brauchen: Definieren ein Bauplan eines Objektes Bauplan enthält Attribute und Methoden Klasse Beispiel
MehrThere are 10 weeks this summer vacation the weeks beginning: June 23, June 30, July 7, July 14, July 21, Jul 28, Aug 4, Aug 11, Aug 18, Aug 25
Name: AP Deutsch Sommerpaket 2014 The AP German exam is designed to test your language proficiency your ability to use the German language to speak, listen, read and write. All the grammar concepts and
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces
Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse
MehrII.4.2 Abstrakte Klassen und Interfaces - 1 -
1. Unterklassen und Vererbung 2. Abstrakte Klassen und Interfaces 3. Modularität und Pakete 4. Ausnahmen (Exceptions) 5. Generische Datentypen 6. Collections II.4.2 Abstrakte Klassen und Interfaces - 1
MehrMock Exam Behavioral Finance
Mock Exam Behavioral Finance For the following 4 questions you have 60 minutes. You may receive up to 60 points, i.e. on average you should spend about 1 minute per point. Please note: You may use a pocket
MehrNeben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter
Kapitel 1 Der vierte Tag 1.1 Vererbung Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter Sprachen. Unter Vererbung versteht man die Möglichkeit, Eigenschaften vorhandener
Mehr19 Collections Framework
Collection = Containterklasse, die andere Objekte enthält. Inhalte: Schnittstellen Implementierungen Algorithmen Vorteile: Einheitlicher Zugriff auf Containerobjekte. Abstraktion von den Implementierungsdetails.
MehrProgrammierkurs Java
Programmierkurs Java Abstrakte Klassen und Methoden & Interfaces Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Vererbungshierarchie
MehrFunktion der Mindestreserve im Bezug auf die Schlüsselzinssätze der EZB (German Edition)
Funktion der Mindestreserve im Bezug auf die Schlüsselzinssätze der EZB (German Edition) Philipp Heckele Click here if your download doesn"t start automatically Download and Read Free Online Funktion
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
Mehr14. Java Objektorientierung. Klassen, Vererbung, Kapselung
427 14. Java Objektorientierung Klassen, Vererbung, Kapselung Objektorientierung: Verschiedene Aspekte 428 Daten Typhierarchie Objekte Code Vererbung Unter- und Oberklassen Methoden überschreiben Unterklassen
MehrBeispielprüfung CuP WS 2015/2016
Beispielprüfung CuP WS 2015/2016 Univ.-Prof. Dr. Peter Auer 23. Dezember 2015 Informationen zur Prüfung Die Prüfung wird als Multiple-Choice-Test mit 10 Fragen am Computer abgehalten. (Bei manchen Fragen
Mehr6. Globalübung (zu Übungsblatt 8)
6. Globalübung (zu Übungsblatt 8) Inhalt: Klassenhierarchien Verdecken von Attributen Überschreiben von Methoden Codeanalyse Analyse von JAVA-Programmen Semestralklausur Klausurtermin: Mittwoch 11.01.2006
MehrLevel 1 German, 2014
90886 908860 1SUPERVISOR S Level 1 German, 2014 90886 Demonstrate understanding of a variety of German texts on areas of most immediate relevance 9.30 am Wednesday 26 November 2014 Credits: Five Achievement
Mehr19 Collections Framework
Collection = Containterklasse, die andere Objekte enthält. Inhalte: Schnittstellen Implementierungen Algorithmen Vorteile: Einheitlicher Zugriff auf Containerobjekte. Abstraktion von den Implementierungsdetails.
MehrIT I: Heute. Nachbetrachtung Wissensüberprüfungen. Einführung Vererbung. Roboter in becker.robots IT I - VO 5 1
IT I: Heute Nachbetrachtung Wissensüberprüfungen Einführung Vererbung Roboter in becker.robots 7.11.2017 IT I - VO 5 1 Organisatorisches Wissensüberprüfung diese Woche wieder am Rechner Wer die 5. Wissensüberprüfung
Mehr2.2 Spezifikation abstrakter Datentypen. 2.3 Implementierung und Anwendung von ADT. 2.4 Datenabstraktion und Objektorientierung
Inhaltsverzeichnis (update) 2 Datenabstraktion 2.1 Begriffe 2.2 Spezifikation abstrakter Datentypen 2.2.1 Algebraische Spezifikation 2.2.2 Modellierende Spezifikation 2.3 Implementierung und Anwendung
Mehr12 Collections Framework. Interfaces Maps and Collections. Collection Interface. Überblick. Collection = Containterklasse, die andere Objekte enthält.
Collection = Containterklasse, die andere Objekte enthält. Inhalte: Schnittstellen Implementierungen Algorithmen Interfaces Maps and Collections Iterable Collection Map Vorteile: Set List Queue SortedMap
MehrIntroduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2016
to to May 2016 to What is Programming? All computers are stupid. All computers are deterministic. You have to tell the computer what to do. You can tell the computer in any (programming) language) you
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Lehrstuhl für Programmierparadigmen Fortgeschr. Objektorientierung SS 2009 http://pp.info.uni-karlsruhe.de/ Dozent: Prof. Dr.-Ing. G. Snelting snelting@ipd.info.uni-karlsruhe.de
MehrProgrammiermethodik 3. Klausur Lösung
Programmiermethodik 3. Klausur Lösung 9. 1. 2014 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 20 2 16 3 45 4 19 5 20 Gesamt 120 1 Seite 2 von 10 Aufgabe 1) Objekt-Orientierung und Vererbung
MehrObjektorientierte Programmierung
Objektorientierte Programmierung WS 2006/2007 Klassen und Vererbung in Java Walter Binder Universität Lugano 2006-11-23 Objektorientierte Programmierung 1 Überblick Konstruktoren Verdecken versus Überschreiben
MehrKapitel zu bearbeitende Aufgaben: 6.1 bis :
Kapitel 6.3.1 1. zu bearbeitende Aufgaben: 6.1 bis 6.5 6.1: 6.2: === Day 23 === 9: pause 10: 11: 12: 13: lunch 14: 15: 16: 17: meeting 6.3: 6.4: PRG1_OOP8_ALG3_SS.docx Seite 1 von 10 http://hslu.ximit.ch
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
MehrObjektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer
Java Kurs Objektorientierung II & die Java Klassenbibliothek Kristian Bergmann und Arthur Lochstampfer Vergleich class Apfel { String farbe; int gewicht; String geerntetin; class Erdbeere { String farbe;
MehrSyntax. int a; public A() {...} public void F() {...} }
Vererbung 1 Syntax class A { int a; public A() {... public void F() {... // Oberklasse class B : A { // Unterklasse (erbt von A, erweitert A) int b; public B() {... public void G() {... B erbt a und F(),
MehrObjektorientierung (OO)
Objektorientierung (OO) Objekte haben Zustände (oder Eigenschaften, Attribute) und Verhalten Zustände: Objektvariablen (in Java auch fields) Verhalten (oder Aktionen): Methoden (methods, Funktionen) members
MehrOrganisatorisches. zwei Gruppen Gemeinsame Wissensüberprüfungen Do (HR) Gruppe 1: Do 12:00-13:00 (HS FöT) Gruppe 2: Do 13:00-14:00 (HS FöT)
Organisatorisches Vorlesung Donnerstag 8:45 bis 10:15 Übung zwei Gruppen Gemeinsame Wissensüberprüfungen Do 11-12 (HR) Gruppe 1: Do 12:00-13:00 (HS FöT) Gruppe 2: Do 13:00-14:00 (HS FöT) Tutorium Montag
MehrJava Einführung Vererbung und Polymorphie. Kapitel 13
Java Einführung Vererbung und Polymorphie Kapitel 13 Inhalt Klassifikation (UML) Implementierung von Vererbungshierarchien Überschreiben von Methoden Polymorphismus: Up-Casting und Dynamisches Binden Schlüsselwort
MehrTutoraufgabe 1 (Collections):
Prof. aa Dr. J. Giesl Programmierung WS17/18 M. Hark, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Collections): In dieser Aufgabe geht es um die Implementierung einer Datenstruktur für Mengen, welche in
Mehr14. Java Objektorientierung
Objektorientierung: Verschiedene Aspekte Daten Typhierarchie Objekte 14. Java Objektorientierung Code Vererbung Unter- und Oberklassen Klassen, Vererbung, Kapselung Methoden überschreiben Unterklassen
Mehr