Ham EST Das Schwein Schmatz.. Fressen Beginnen wir.... mit einer Geschichte:

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

Objektorientierte Programmierung
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Konzepte objektorientierter Systeme
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Einführung in die Programmierung Zusammenfassung
Kapselung , toString , equals , Java API
Programmierkurs C/C++
Objektorientierte Programmierung Definition von Klassen
Einführung Blue J.
HG13_ Herzgen, Jung & Lorkowski
HG13_ Herzgen, Jung & Lorkowski1 Java Programmierung BlueJ Workshop.
Java: Objektorientierte Programmierung
Indirekte Adressierung
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
Klassenvariable (auch Klassendaten bzw. statische Attribute genannt) und statische Methoden.
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
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.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Programmieren mit JAVA
Abstrakter Datentyp in C++ I - Klasse -
C++ Vererbung und Polymorphie
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 Klassendefinition und Objekte
© 2002 Dr. Cavelius - Ley - Pohlig - Taulien Programmierung im Netz und Internet: Einführung in die Programmiersprache Java Teil I 1 Klassen Objekte von.
Visual FoxPro Objektorientierte Programmierung. © 1999 TMN-Systemberatung GmbH Grundbegriffe n Objekte n Eigenschaften n Methoden n Objektnamen n Klasse.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung
Informatik 1 Übung 8. NACHBESPRECHUNG Übung 8 Rekursion Existiert Weg von A nach B?
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.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
ObjektOrientiertes Programmieren
Informatik Zustandsorientiertes Modellieren und Programmieren 2.4 Datenkapselung 2.4 Datenkapselung Objekte können miteinander kommunizieren, indem.
2. Zustandsorientiertes Modellieren 2.4 Datenkapselung
Objektorientiertes Konstruieren
Objektorientierte Programmierung
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
OOP-Begriffe Abstraktion Modellieren Klasse Objekt Attribute Methoden
1 VeranstaltungThemaVortragende AINF-Lehrgang 2003 Titel: Grundlagen der Objektorientierten Programmierung Name: Gruppe Programmierung.
HG13_ Herzgen, Jung & Lorkowski1 Java Programmierung BlueJ Workshop.
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.
Objektorientierte Programmierung (OOP)
Objektorientierte (OO) Programmierung
Objektorientierte Programmierung §Klassen §Objekte §Attribute §Eigenschaften §Methoden §Datenkapselung §Ereignisse §Vererbung §Entwicklungszeit §Laufzeit.
Vererbung. Klassen - Vererbung  Eine Klasse kann von einer Basisklasse abgeleitet werden  Die abgeleitete Klasse erbt die Eigenschaften und Methoden.
Tutorium Software-Engineering SS14 Florian Manghofer.
C++ FÜR cOMPUTERSPIELENTWICKLER
Tutorium Software-Engineering SS14 Florian Manghofer.
Objektorientierung Gliederung von Daten und Funktionen zu Objekten
Die Klasse Geist.
Ein schematischer Kirschbaum in Java
Einführung in die Programmierung mit Java
Grundkurs Informatik 11-13
Objektorientierung Klassen und Objekte Dr. Beatrice Amrhein.
Grundkurs Informatik 11-13
 Präsentation transkript:

Ham EST Das Schwein Schmatz.. Fressen Beginnen wir.... mit einer Geschichte:

Ham EST Schmatz.. Fressen

Ham EST Schmatz.. Fressen

Ham EST Schmatz.. Fressen

Ham EST Schmatz.. Fressen

Ham EST

Was hat das Schwein mit OOP zu tun ?

Ham EST Begriffe der OOP Objekt (object) Klasse (class) Methode (method) Eigenschaft (property) Ereignis (event) Nachrichten (message)

Ham EST Klasse Beschreibung (Bauplan) eines Objekts Deklaration (und Definition) der Variablen (Eigenschaften) Festlegung der Methoden Schutzhülle Methode 1 Eigenschaft 1 Methode 2 privat Eigenschaft 2

Ham EST Objekt konkrete Ausprägung einer Klasse Instanz einer Klasse belegt Speicherplatz Eigenschaft 2 Schutzhülle Methode 1 Eigenschaft 1 Methode 2 privat

Ham EST Merke: Durch Instanzierung wird aus der Klasse ein Objekt gebildet ! Instanzieren Klasse Objekt

Ham EST Ereignis (event)

Ham EST Nachricht (message) Kommunikation zwischen den Objekten Objekt 1 Objekt 2 Objekt n

Ham EST Objekt mit Nachricht Nachricht wirkt auf Methode Nachricht (Ereignis) Methode 1 Methode 2 Eigenschaft 1 Eigenschaft 2

Ham EST Methode kann auf private Daten (Eigenschaften) zugreifen Eigenschaft y wird von Nachrichten oder Ereignis angestossen ändert den Zustand des Objektes kann Nachrichten versenden Nachricht Objekt Nachricht senden Methode x Ereignis

Ham EST Beispiel:Schwein fressen Gewicht Nachricht für Schwein Schmatz... Nachricht vom Schwein

Ham EST Vererbung am Beispiel Lebewesen M1 E1 Baum M1 E1 M2 Tier M1 E1 M3 Strauch M1 E1 M2 Pflanze M1 E1 M2 Fisch M1 E1 M3 E2 Säugetier M1 E1 M3 E2 Mensch M1 E1 M3 E2 Schwein M1 E1 M3 E3

Ham EST Polymorphismus Objekt 1 Objekt 2 Nachricht

Ham EST Polymorphismus Gleiche Nachricht führt je nach Objekt zu unterschiedlichen Methoden Objekt 1 Objekt 2

Ham EST Zusammenfassung über OOP Konzept: Datenkapselung Vererbung Polymorphismus Konzept: Datenkapselung Vererbung Polymorphismus Vorteile: Qualitätssteigerung Wiederverwertbarkeit Übersichtlichkeit Wartbarkeit Kostenreduktion Vorteile: Qualitätssteigerung Wiederverwertbarkeit Übersichtlichkeit Wartbarkeit Kostenreduktion

Ham EST OOP-Codierung in C++ am Beispiel Schwein class Schwein { private: int groesse; int gewicht; public: void fressen (void); void bewegen (void); void gewicht_anzeigen(void); Schwein (int,int); //Konstruktor ~Schwein(); //Destruktor }; class Schwein { private: int groesse; int gewicht; public: void fressen (void); void bewegen (void); void gewicht_anzeigen(void); Schwein (int,int); //Konstruktor ~Schwein(); //Destruktor };

Ham EST Schwein::Schwein(int gr,int ge) //Konstruktor { groesse=gr; gewicht=ge; cout<<"Schwein lebt !"<<endl; } void Schwein::fressen(void) { groesse++; gewicht++; }

Ham EST void Schwein::bewegen(void) { gewicht--; } void Schwein::gewicht_anzeigen(void) { cout<<gewicht<<endl; } Schwein::~Schwein() //Destruktor { cout <<"Schwein tot !"<<endl; } void Schwein::bewegen(void) { gewicht--; } void Schwein::gewicht_anzeigen(void) { cout<<gewicht<<endl; } Schwein::~Schwein() //Destruktor { cout <<"Schwein tot !"<<endl; }

Ham EST Schwein Mathilde(30,40);//Schwein Mathilde mit einer //Größe von 30 und mit einem //Gewicht von 40 kreiert void main (void) { Mathilde.gewicht_anzeigen(); Mathilde.fressen(); Mathilde.gewicht_anzeigen(); } Schwein Mathilde(30,40);//Schwein Mathilde mit einer //Größe von 30 und mit einem //Gewicht von 40 kreiert void main (void) { Mathilde.gewicht_anzeigen(); Mathilde.fressen(); Mathilde.gewicht_anzeigen(); }

Ham EST OOP-Codierung in C am Beispiel Schwein