Objectives Verstehen was unterDelegate verstanden wird

Slides:



Advertisements
Ähnliche Präsentationen
Blue J.
Advertisements

C Sharp (C#) Martin Saternus Senior Student Partner
der Universität Oldenburg
der Universität Oldenburg
Progwerkstatt JAVA Klasse, Objekte, Konstruktoren, Methoden
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
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
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
Klassenvariable (auch Klassendaten bzw. statische Attribute genannt) und statische Methoden.
Strukturen. In einer Struktur kann eine beliebige Anzahl von Komponenten (Daten) mit unterschiedlichen Datentypen (im Gegensatz zu Feldern) zusammengefaßt.
Ein Beispiel in Java.
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,
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
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.
PKJ 2005/1 Stefan Dissmann Klassenhierarchie Person Kunde Goldkunde Lieferant Object.
Projektplan: Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University.
Command Pattern Karola Schäuble,
DVG Klassen und Objekte
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Kollektionstypen (1) Es sind polymorphe Typkonstruktoren, jeweils als Sorten- und als Klassenkonstruktor (t,v beliebige Typen): –set, Set :Ungeordnete.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Erstellen eines Zufallsgenerators
10. Vorlesung: Dynamische Konzepte
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Java programmieren mit JavaKara
IT2 – WS 2005/20061Oct 10, 2005 Externes Verhalten – Quelltext (source code) Durch Aufrufe der Konstruktoren und Methoden kann das externe Verhalten (=die.
Einführung in die Programmiersprache C 3.Tag Institut für Mathematische Optimierung - Technische Universität Braunschweig.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 8 Folie 2 Commands (1) s.a.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 1 Folie 2 Microsoft.NET Framework: Quelle:
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Vom Umgang mit Daten. public void myProgram() { int[] saeulenWerte = new int[world.getSizeX()]; for (int i = 0; i < saeulenWerte.length; i++) { saeulenWerte[i]
Dynamische Datentypen
Informatik Zustandsorientiertes Modellieren und Programmieren 2.4 Datenkapselung 2.4 Datenkapselung Objekte können miteinander kommunizieren, indem.
2. Zustandsorientiertes Modellieren 2.4 Datenkapselung
Aufgaben Version 1: Es soll eine Wetterstation mit folgenden zwei Anzeigen implementiert werden: Aktuelle Wetterbedingungen mit Temperatur und.
Thread Synchronisation in JAVA
Java Programmierung.
Aufruf einer Methode eines Objektes vom Typ „Bruch“
Learning By Doing Parallelverarbeitung Multithreading (Nebenläufigkeit) Alte Idee der Parallelverarbeitung statt rein sequentieller Prozesse Parallelverarbeitung.
Parallelisierung für Multiprozessor-Maschinen Teil 2.
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
Einführung in die Programmierung mit Java
Java-Kurs Übung Besprechung der Hausaufgabe
Microsoft Student Partner
Funktionen. Aufgabe : Eingabe zweier Zahlen ---> Minimum bestimmen Dann nochmals Eingabe zweier Zahlen ---> Minimum bestimmen.
Java Programme nur ein bisschen objektorientiert.
Tutorium Software-Engineering SS14 Florian Manghofer.
Tutorium Software-Engineering SS14 Florian Manghofer.
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
S INGLETON P ATTERN IN M ATLAB By Giuseppe
C++ FÜR cOMPUTERSPIELENTWICKLER
Tutorium Software-Engineering SS14 Florian Manghofer.
„Was du ererbt von Deinen Vätern hast, erwirb es, um es zu besitzen.“
1.Event Queue.
Von Cem, Maurice und lars
Arrays in Java Ein Array ist eine Variable, die aus einer An-zahl von Elementen des gleichen Datentyps besteht, die aufeinanderfolgend im Speicher liegen.
«Delegierter» Methoden Schablone Funktionszeiger
1. Die rekursive Datenstruktur Liste 1
Implementieren von Klassen
Grundkurs Informatik 11-13
 Präsentation transkript:

Allgemeines Event Konzept 31.03.2017 Allgemeines Event Konzept Götz Winterfeldt

Objectives Verstehen was unterDelegate verstanden wird Ein Delegate realisieren Verstehen, was unter einem Event verstanden wird Events realisieren

Delegates sind Aliase Einfach gesprochen ist ein Delegate ein Funktionsaufruf, der auf einem Platzhalter gespeichert wird Anstatt, dass sie die Methode : myclass.run(); aufrufen Möchten sie schreiben können: Run(); Ein Delegate ist somit ein Funktionsaufruf, den sie einer Variable übergeben.

Ein einfaches Beispiel Delegates werden durch das Schlüsselwort delegate erzeugt Dem Schlüsselwort folgt die Deklaration des Aufrufes public delegate void doIt(int i); Sie weisen der Delegatevaribale während der Laufzeit den auszuführenden Code zu

Simple example Delegates In order to make use of the delelegate. Either a static or non static function can be linked to the statement Writer testWriter = new DelegateEx().write1; Now Writer() would execute the function DelegateEx.write1

Delegates Delegates kapseln in gewisser Weise Methodenaufrufe Sie müssen Delegates mit grosser Vorsicht einsetzten, da sie im Allgemeinen eine instanzierte Klasse nutzen müssen Durch Delegates können sie relativ intelligente Programme schreiben, die nicht unbedingt sehr lesbar sein müssen.

Listen von Funktionsaufrufen Sie können Funktionsaufrufe innerhalb einer Delegate speichern Wenn sie eine Liste erstellen werden die Funktionen nach der Reihenfolge in der sie der Funktion hinzugefügt wurden ausgeführt Sie addieren Funktionsaufrufe mittels der +Operators zu der Liste

Events Events werden zur Nachrichtenübermittlung voneinander unabhängiger Klassen genutzt Sie implementieren Events normalerweise unter zu Hilfenahme des delegate Konzeptes Events sind nicht nur an Interfaces gebunden, sondern sie können Events allgemein nutzten, wenn ein Element ein anderes über Statusänderungen informieren möchten

Basic event model Events werden durch das erste Element ausgelöst , aber durch das zweite Element ausgeführt event message Object Object event parse message call appropriate event handler event handler response

Events Einem Event wird jeweils eine aufzurufende Funktion in Form eines Delegates zu geordnet Events werden durch das Schlüsselwort event eingeführt und müssen ein delegate bezeichnen Events sind Elemente, die einer Klasse zugeordnet sind

Einen allgemeinen Event kreiieren Definieren des Objektes, das das Event auslösen soll Das Event wird ausgelöst, sobald eine bestimmte Bedingung erfolgt ist Bitte beachten sie, dass die eigentliche Funktion, die ausgeführt werden soll noch unbekannt ist

Messages Nachrichten sind Datenstrukturen, die übergeben werden Achten sie darauf Werte zu setzten, die sie mitgeben wollen Die Struktur kann beliebig erweitert werden

Empfänger Empfänger erhalten Nachrichten und führen diese dann aus Der Reciever muss eine Funktion implementieren, die im Hinblick auf Parameter und Returnwert den Anforderungen des Delegates entspricht

Das Zusammenspiel Sie kreieren den Sender, dieser besitzt eine Position zur Speicherung einer ausführbaren Funktion (event) Sie kreieren den Reciever Sie weisen die Funktion, die ausgeführt werden soll, wenn ein Event eintritt dem Eventhandler zu Sie starten die Applikation

Sender – Receiver Events raised by object1, but handled by object2 message event parse message call appropriate event handler event handler

Zusammenfassung Delegates sind “Methoden”, die während der Laufzeit übergeben werden Beachten sie, das delegates als Methoden einer Klasse realisiert werden müssen (Parameter und Return Wert) Events halten delegates Sobald eine Event ausgeführt wird, wird der Aufruf an ein Delegate weitergeleitet. Dies ist eine Methode einer realisierten Klasse