EPROG Tutorium #3 Philipp Effenberger

Slides:



Advertisements
Ähnliche Präsentationen
Ziele von EINI I + II Einführen in „Informatik“
Advertisements

der Universität Oldenburg
Klassen - Verkettete Liste -
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Einführung in die Programmierung Ausführbare Klassen
Einführung in die Programmierung Zusammenfassung
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
Kapselung , toString , equals , Java API
Progwerkstatt JAVA Klasse, Objekte, Konstruktoren, Methoden
Ausnahmen HS Merseburg (FH) WS 06/07.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Listen Richard Göbel.
Indirekte Adressierung
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
Klassenvariable. Da man für jede Kuh bzw. jede Henne auf dem Markt den gleichen Preis für ein Liter Milch, bzw. den gleichen Preis für ein Ei bekommt,
Konstruktoren.
Objekte und Arbeitsspeicher
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 3 Klassen, Objekte, Arrays und Kontrollstrukturen Sommersemester 2003 Lars Bernard.
Programmieren mit JAVA
Programmieren mit JAVA
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
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.
Zusammenfassung Vorwoche
Packages Vortrag : Cornelia Hardt 23. November 1999.
DVG Klassen und Objekte
DVG Einfache Klassen 1 Einfache Klassen. 2DVG Einfache KlassenStrukturen Beispiel: Personendaten bestehen aus String name String name.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Einführung in die Programmierung Datensammlung
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Sitzung 3: Klassen, Objekte, Arrays und Kontrollstrukturen
Informatik 1 Übung 8. NACHBESPRECHUNG Übung 8 Rekursion Existiert Weg von A nach B?
Kontrollstrukturen Verwendung: Steuerung des Ablaufs.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Java und Eclipse.
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
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
Dynamische Datentypen
Objektorientiertes Konstruieren
Variablenkonzept Klassisch, in Java Basistyp
Objektorientierte Programmierung
ac.at1 EPROG Tutorium #1 Philipp Effenberger Einführung in Java Schlüsselworte Datentypen.
EPROG Tutorium #4 Philipp Effenberger
EPROG Tutorium #6 Philipp Effenberger
EPROG Tutorium #5 Philipp Effenberger
Starten der Entwicklungsumgebung (IDE)
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Einführung in die Programmierung mit Java
Java-Kurs Übung Besprechung der Hausaufgabe
Java-Kurs - 5. Übung Besprechung der Übungsaufgabe Klassen und Objekte
Programmierkurs JavaUE 4 Anweisungen und ProgrammeDietrich BolesSeite 1 Programmierkurs Java Dr. Dietrich Boles Teil Imperative Programmierung Unterrichtseinheit.
Einführung in Java PING e.V. Weiterbildung Andreas Rossbacher 24. März 2005.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Objektorientierte Programmierung (OOP)
Objektorientierte Datenbanken
Tutorium Software-Engineering SS14 Florian Manghofer.
Tutorium Software-Engineering SS14 Florian Manghofer.
C++ FÜR cOMPUTERSPIELENTWICKLER
Konstruktoren.
„Was du ererbt von Deinen Vätern hast, erwirb es, um es zu besitzen.“
Zwei Denkansätze zur Klasse Schlange
Java-Kurs - 4. Übung weitere Kontrollstrukturen
Implementieren von Klassen
 Präsentation transkript:

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

Ü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 19. April 2005 philipp_effenberger@web.de

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

Ergänzung zur if-Schleife switch – Schleife Mehrfachverzweigung Condition nur vom Typ byte, short, char, int 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;} 19. April 2005 philipp_effenberger@web.de

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 <Name> (<Param>) ... ... ..., ... 19. April 2005 philipp_effenberger@web.de

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 ) 19. April 2005 philipp_effenberger@web.de

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() 19. April 2005 philipp_effenberger@web.de

Klassenvariable/Objektvariable 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) Eventuell noch Rückgabewerte erklären 19. April 2005 philipp_effenberger@web.de

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 19. April 2005 philipp_effenberger@web.de

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 19. April 2005 philipp_effenberger@web.de

Einleitung OOP 1 stud4.tuwien.ac.at/~e0326017/eprog durchlesen! 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 19. April 2005 philipp_effenberger@web.de

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/ 19. April 2005 philipp_effenberger@web.de