Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

19. April EPROG Tutorium #3 Philipp Effenberger Ergänzungen Klassen und Methoden Einleitung OOP.

Ähnliche Präsentationen


Präsentation zum Thema: "19. April EPROG Tutorium #3 Philipp Effenberger Ergänzungen Klassen und Methoden Einleitung OOP."—  Präsentation transkript:

1 19. April 2005philipp_effenberger@web.de1 EPROG Tutorium #3 Philipp Effenberger Ergänzungen Klassen und Methoden Einleitung OOP

2 19. April 2005philipp_effenberger@web.de2 Überblick Tutorium #2 Erweiterungen zu den Schleifen Klassen- und Methodenbenützung Methoden allgemein Methodenrückgabewerte Besondere Methoden Klassenvariable – Methodenvariable Einleitung objektorientierte Programmierung Unterschied Klasse – Objekt

3 19. April 2005philipp_effenberger@web.de3 Wiederholung Tutorium #2 String char boolean arrays if/else, do/while, while, for break, continue Operatoren

4 19. April 2005philipp_effenberger@web.de4 Ergänzung zur if-Schleife switch – Schleife Mehrfachverzweigung Condition nur vom Typ byte, short, char, intbyteshortcharint Auswertung der Condition bestimmt, welche Sprungmarke (deren Konstante Zuweisungskompartibel sein muss) Alle case-Konstanten müssen unterschiedliche Namen haben default – Label bestimmt Anweisung wenn kein Fall zutrifft, unique in Schleifen switch (condition) { case [Konstante 1]: anweisungen[;break]; //[…]optional case [Konstante 2]: anweisungen; … default : anweisungen;}

5 19. April 2005philipp_effenberger@web.de5 Methoden Haben eine bestimmte Funktionalität; z.B. etwas einlesen oder etwas zusammenfügen ( String + String ) Mit oder ohne Parameter bzw Rückgabewert ( return x ) Problemlos wiederverwendbar (wichtig für OOP) public [static] void ( ).........,...

6 19. April 2005philipp_effenberger@web.de6 Methodenrückgabewerte public void irgendeineMethode() {[nix kommt retour]} private int addDieZahl( int a) { return eineInteger; } package String getNamen() { return einenString } protected void setStud() { [nix kommt retour] } Spezielle Methoden sind get und set Typisch für Rückgaben von Objekten oder Veränderungen der Klassen-/Programmparameter; s.g. Getter und Setter z.B.: public int getAlter( Student name, int matrnr )

7 19. April 2005philipp_effenberger@web.de7 Besondere Methoden Konstruktor: Erzeugt neues Objekt einer Klasse ( new ) Name ident mit Klassenname Kein Rückgabetyp, eventuell Parametertypen Initialisiert Objektvariablen für das betreffende Objekt z.B.: public Student( String name ) { this.name = name } Student stud1 = new Student( peter ) Destruktor: Gibt Speicher wieder frei, wenn Objekt nicht mehr gebraucht (eher bei Applets üblich) void finalize() Garbage Collector, null Gibt automatisch nicht mehr benötigten Speicher frei ( Destruktor) Kann auch direkt aufgerufen werden (eher bei Applets): System.gc()

8 19. April 2005philipp_effenberger@web.de8 Klassenvariable/Objektvariable Klassenvariable static member Klassenvariable statisch, deswegen nur einmal für alle Objekte vorhanden. Deklariert innerhalb der Klasse, ausserhalb jeder Methode Sichtbarkeit zumindest in der gesamten eingenen Klasse Objektvariable member variable Objektvariable dynamisch und gilt nur für ein Objekt. Kann innerhalb einer Klasse deklariert werden Sichtbarkeit sollte ausschließlich in der eingenen Klasse sein (besser für OOP)

9 19. April 2005philipp_effenberger@web.de9 Einleitung OOP 1 Klassen Beschreiben ein Gerüst, nach dem ein Objekt erzeugt wird (z.B.: Hund) static members, z.B. Anzahl der erzeugten Objekte (in dem Fall Hunde ;-) ) Müssen nicht main-Methode haben – stellen nur Methoden für ein Programm zur Verfügung Objekte Teil einer Klasse; z.B. Maxi, Wuschel,… Alle Objekte haben die selben members (aber mit unterschiedlichem Inhalt) Eigenschaften – durch member variables festgelegt Verhalten – durch Klassen- Methoden definiert

10 19. April 2005philipp_effenberger@web.de10 Hintergrundwissen zu Klassen Klasse – Objekt Klasse nur Vorlage für Objekte Beliebig viele Objekte möglich von einer Klasse Sichtbarkeiten public … von überall private … nur in der selben Klasse protected … nur in den abgeleiteten Klassen package …nur im Package

11 19. April 2005philipp_effenberger@web.de11 Einleitung OOP 1 Begleittext auf meinem TU-Webspace stud4.tuwien.ac.at/~e0326017/eprog durchlesen! Alle wesentlichen Informationen zu OOP Alles notwendige als Handout Ab nächster Woche notwendiges Hintergrundwissen

12 19. April 2005philipp_effenberger@web.de12 Wichtige Klassen für nächstes Tutorium (OOP)! java.lang.String java.Arrays java.util.List (ArrayList, LinkedList) Container java.util.Vector java.util.Iterator java.util (nur zum überfliegen, da viele nützliche Klassen) Link zum Thema Pointers (für Interessierte) http://cslibrary.stanford.edu/104/


Herunterladen ppt "19. April EPROG Tutorium #3 Philipp Effenberger Ergänzungen Klassen und Methoden Einleitung OOP."

Ähnliche Präsentationen


Google-Anzeigen