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 EPROG Tutorium #3 Philipp Effenberger Ergänzungen Klassen und Methoden Einleitung OOP

2 19. April Ü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 Wiederholung Tutorium #2 String char boolean arrays if/else, do/while, while, for break, continue Operatoren

4 19. April 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 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 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 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 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 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 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 Einleitung OOP 1 Begleittext auf meinem TU-Webspace stud4.tuwien.ac.at/~e /eprog durchlesen! Alle wesentlichen Informationen zu OOP Alles notwendige als Handout Ab nächster Woche notwendiges Hintergrundwissen

12 19. April 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)


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

Ähnliche Präsentationen


Google-Anzeigen