EPROG Tutorium #4 Philipp Effenberger

Slides:



Advertisements
Ähnliche Präsentationen
C Sharp (C#) Martin Saternus Senior Student Partner
Advertisements

der Universität Oldenburg
der Universität Oldenburg
Konzepte objektorientierter Systeme
Einführung in die Programmierung Zusammenfassung
Kapselung , toString , equals , Java API
Progwerkstatt JAVA Klasse, Objekte, Konstruktoren, Methoden
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
FH-Hof Einbindung von JavaScript Anweisungen
Java: Objektorientierte Programmierung
Indirekte Adressierung
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
Ein Beispiel in Java.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 4 Vererbung Sommersemester 2003 Lars Bernard.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 5 Polymorphismus Sommersemester 2003 Lars Bernard.
Praxis-Repetitorium JAVA zusätzliche, ergänzende Lehrveranstaltung
Vererbung Spezialisierung von Klassen in JAVA möglich durch
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Programm besteht aus mehreren Bestandteilen: Schlüsselwörter Sonderzeichen Bezeichner Kommentare Texte.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
DVG Interfaces. DVG mehrfache Vererbung 4 Mehrfache Vererbung ist die Ableitung einer Klassen von mehreren anderen Klassen. –farbigerPunkt.
DVG Klassen und Objekte
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
© 2004 Pohlig - Taulien Dokumentation mit JavaDoc.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Objektorientierte Modellierung
Programme dokumentieren mit JavaDoc
Objektorientiertes Programmieren
EPROG Tutorium Einheit 4 Klassen und Objekte. Wiederholung Schleifen do... while while for break/continue Strings String char Methoden für Strings Arrays.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Tutorium PG Verbesserung Blatt 5 Beim instanziieren eines Fahrrades muss es möglich sein, alle benötigten Attribute dem Konstruktor zu übergeben.
Objektorientiertes Konstruieren
Objektorientierte Programmierung
ac.at1 EPROG Tutorium #1 Philipp Effenberger Einführung in Java Schlüsselworte Datentypen.
EPROG Tutorium #6 Philipp Effenberger
EPROG Tutorium #5 Philipp Effenberger
EPROG Tutorium #3 Philipp Effenberger
Wilfried Imrich CuP - Java Erste Vorlesung Entspricht ungefähr Kapitel 1.1 des Skriptums Wilfried Imrich Montanuniversität Leoben Freitag, 4. Oktober 2002.
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Objektorientierung.
Programmiervorkurs WS 2014/15 Instanzmethoden
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
1 VeranstaltungThemaVortragende AINF-Lehrgang 2003 Titel: Grundlagen der Objektorientierten Programmierung Name: Gruppe Programmierung.
Java-Kurs Übung Besprechung der Hausaufgabe
Java-Kurs - 5. Übung Besprechung der Übungsaufgabe Klassen und Objekte
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Gerhard Gröger Einführung in die Programmierung mit Java 5. Vorlesung WS 2002/2003.
IT2 – WS 2005/20061Nov 14, 2005 Visibility  public: Sichtbar in allen Paketen  protected: Sichtbar innerhalb des Pakets und in den Unterklassen  (default,
Einführung in die Programmierung mit Java 5. Vorlesung WS 2002/2003 Institut für Kartographie und Geoinformation Prof.-Dr. Lutz Plümer, Dr. Gerhard Gröger,
Einführung in Java PING e.V. Weiterbildung Andreas Rossbacher 24. März 2005.
Reflection API1 Motivation Reflection API Core Reflection API: java.lang.reflect Seit JDK 1.1 integraler Bestandteil der Java- Klassenbibliothek Ermöglicht:
BA Stuttgart, Technische Informatik, SW-Engineering, Objektorientierter Entwurf April 2007 Seite 1 Objektorientierter Entwurf (OOD) Beispiel: Generator.
Objektorientierte (OO) Programmierung
Java Programme nur ein bisschen objektorientiert.
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
, 1 / Javakurs 2012 – Objektorientierung Objektorientierte Programmierung I This work is licensed under the Creative Commons Attribution-ShareAlike 3.0.
Objektorientierung Gliederung von Daten und Funktionen zu Objekten
„Was du ererbt von Deinen Vätern hast, erwirb es, um es zu besitzen.“
Einführung in die Programmierung mit Java
Grundkurs Informatik 11-13
Es gibt Klassen, die mit der Entwicklungsumgebung ausgeliefert werden
1. Die rekursive Datenstruktur Liste 1
Implementieren von Klassen
 Präsentation transkript:

EPROG Tutorium #4 Philipp Effenberger Objektorientierte Programmierung Beziehungen Abstraktion Kapselung Wiederverwendung & Wartbarkeit Javadoc 26. April 2005 philipp_effenberger@web.de

Wiederholung Tutorium #3 switch-Statement Static member variable – member variable Methoden – Aufbau Methodenheader: Integer x, Kontrolle x>0? Methodenheader: Objekt Computer mit int ID, ArrayList<String> Bestandteile, String Besitzer Wie viele Teile hat der Computer? Konstruktor Neues Objekt? Neues Objekt mit String Bezeichner? Neues Objekt mit int Nummer, String Name, double Wert? Neues Objekt mit ArrayList<Object>? 26. April 2005 philipp_effenberger@web.de

Beziehung Klassen und dementsprechend Objekte stehen normalerweise in einer Beziehung zueinander. Generalisierung “is_a“ Beziehung Fahrrad is_a Zweirad is_a Transportmittel… Aggregation “part_of“ Beziehungen Schlauch part_of Reifen part_of Fahrrad… Verwendungs- und Aufrufbeziehung Ich *arbeite_mit* Studenten *arbeiten_mit* Computer… 26. April 2005 philipp_effenberger@web.de

Abstraktion Hut hat Eigenschaft z.B.: Trennung Konzept – Umsetzung: Besitzer Typ Farbe Grösse Trennung Konzept – Umsetzung: z.B.: ich will einen grauen Stetsonhut aufsetzen Ich bin ein Besitzer mit verschiedenen Eigenschaften Stetsonhut ist ein Hut mit verschiedenen Eigenschaften Konzept auch für alle andere Menschen/Hüte anwendbar Besitzer hat Eigenschaft: Kopfgrösse Alter … 26. April 2005 philipp_effenberger@web.de

Abstraktion 2 Wichtig ist zu wissen, wie bediene ich das Objekt, welche Eigenschaften hat das Objekt und wie verhält es sich, wie erzeuge ich das Objekt. Die Klasse ist quasi das abstrakte Objekt, das dann seine Eigenschaften bekommt (dieser Hut ist pink, dieser Hut blau,…; alle Hüte haben aber eine (eigene) Farbe) 26. April 2005 philipp_effenberger@web.de

Kapselung member variables Objektverhalten (=vorhandene Methoden) Sollten immer private sein; so kann man unvorhergesehene Zugriffe/ungewollte Veränderungen ausschließen. Veränderbar über Methoden, in allen Objekten einer Klasse vorhanden, können aber unterschiedlichen Inhalt haben und sich in der Runtime verändern. Objektverhalten (=vorhandene Methoden) Schnittstelle mit dem Objekt, hier kann man alles vom Objekt erfahren, mit dem Objekt arbeiten. Kontrolliertes Verhalten; ist ja schließlich selbst programmiert, also (in den meisten ;-) ) Fällen vorhersehbar. 26. April 2005 philipp_effenberger@web.de

Wiederverwenbarkeit, Wartbarkeit Vererbung ermöglicht Benützung von Code aus anderen Klassen Ermöglicht so komplexe Konstrukte Taste wird Keyboard, Keyboard wird I/O für NASA Rakete… Schnittstelle übersichtlich gestalten (!), denn dann braucht man den Code nicht zu kennen, trotz Benützung public int getGroesse( Object XYZ ) Ich weiß: öffentlich zugänglich, Objekt XYZ muss übergeben werden, Integer als Ergebnis zurück ans Programm Code an nur einer Stelle ist leicht zu korrigieren bei Fehlern! 26. April 2005 philipp_effenberger@web.de

Javadoc Dient zur Dokumentation von Programmen Wird innerhalb des .java Files als Kommentar dazugeschrieben und kann dann kompiliert werden Formatierung: /** * @param ch the character to be tested… */ javadoc [-private] Klassenname.java (auch *.java möglich) Links: http://mindprod.com/jgloss/javadoc.html http://java.sun.com/j2se/javadoc/ 26. April 2005 philipp_effenberger@web.de

Javadoc – kurze Referenz * @param (classes, interfaces, methods and constructors only) * @return (methods only) * @exception (@throws is a synonym added in Javadoc 1.2) * @author (classes and interfaces only, required) * @version (classes and interfaces only, required. See footnote 1) * @see * @since * @serial (or @serialField or @serialData) * @deprecated (see How and When To Deprecate APIs) 26. April 2005 philipp_effenberger@web.de