Newest Viewed Downloaded

6 C#-Grundlagen Projektmappe: 6_C-Sharp-GrundlagenObjektorientierte Programmierung mit C++ und C# WS 2010/11 Prof. Dr. Herrad Schmidt

6 C#-Grundlagen Projektmappe: 6_C-Sharp-Grundlagen

Objektorientierte Programmierung mit C++ und C# WS 2010/11 Prof. Dr. Herrad Schmidt

C#-Grundlagen s.a. http://msdn.microsoft.com/de-de/library/z1zx9t92.aspx Objektorientierte Sprache (keine Mehrfachvererbung, aber es können mehrere Schnittstellen implementiert werden) Klasse Object ist Wurzel aller Klassen Interfaces Properties (get/set) Garbage Collector Generische Methoden und Typen, Iteratoren Delegates Attribute (Metadaten zu Typen) Zeiger möglich, aber nicht unbedingt üblich Keine Headerdateien

Quelle: http://msdn.microsoft.com/de-de/library/z1zx9t92.aspx Quellcode wird beim Kompilieren in einen Intermediate Language (IL)-Code (sprachunabhängig) übersetzt und mit Ressourcen und Metadaten etc. in eine ausführbare Datei (Assembly) gespeichert. Bei der Ausführung wird die Assembly (Zwischencode) just-in-time durch die CLR in die Maschinensprache der CPU übersetzt.

C# (1): Klassen public class K { public string Zeichenkette; public K() { Zeichenkette = "blabla" ; } public void Methode() { … } } Eigenschaften (properties) public string Bezeichnung { get { return Zeichenkette; } set { Zeichenkette = value; } } Vererbung (nur bei Klassen, nicht bei struct) und Polymorphismus s. http://msdn.microsoft.com/de-de/library/ms173149.aspx und http://msdn.microsoft.com/de-de/library/ms173152.aspx Containerklassen (Collections) und Iteratoren array, ArrayList, List, dictionary, foreach

C# (2): Schnittstellen (interfaces) Zusammenfassung von (automatisch öffentlichen) Methoden, Eigenschaften und Ereignissen ohne Implementierung; Eine oder mehrere Klassen oder Strukturen enthalten die Implementierung. Sie erben vom interface. Delegaten (Delegatentyp) vergleichbar einem Funktionszeiger in C++, ist aber im .NET Framework eine Klasse, die einen Verweis auf eine Methode enthalten kann Deklaration des Delegatentyps MeinDelegat mit Signatur: public delegate int MeinDelegat (string Text); Instanziierung: MeinDelegat md = new MeinDelegat(DelegatmethodeX); MeinDelegat md = DelegatmethodeX; // seit C# 2.0 auch möglich Aufruf: md("blabla");

C# (3): Ereignis (event) s.a. http://msdn.microsoft.com/de-de/library/awbftdfh.aspx Prinzip: Der Herausgeber verfügt über ein event und löst es aus. Der Abonnent behandelt das Ereignis durch Ereignishandlermethoden. Ereignisse basieren auf dem EventHandler-Delegaten public delegate void EventHandler(object sender, EventArgs e); und der EventArgs-Klasse. Die Herausgeberklasse deklariert ein event: public event EventHandler Aktion; Abonnent fügt Methode hinzu: Objekt.Aktion += Ereignishandlermethode; Herausgeber löst das Ereignis aus: Aktion(this, …);

Solution 6_C-Sharp-Grundlagen: A_Konsolenanwendung B_Listen: diverse Container-Klassen C_Interface D_Delegate E_Event Übung 6: Konsolenanwendung in C# Schreiben Sie ein C#-Programm mit Events und Delegaten: Es gibt Teilnehmerobjekte und ein Verwaltungsobjekt. Wenn die Teilnehmer sich anmelden, ändert sich ihr Status (angemeldet = 1). Wenn der Anmeldeschluss erreicht ist, löst das Verwaltungsobjekt ein Event aus, wodurch bei allen Teilnehmern der Status auf 2 gesetzt wird (im Sinne einer Anmeldebestätigung).

Showing 1 - 7 of 7 items Details

Name: 
oop6_csharp-grundlagen
Author: 
Schmidt
Company: 
Universität Siegen
Description: 
6 C#-Grundlagen Projektmappe: 6_C-Sharp-GrundlagenObjektorientierte Programmierung mit C++ und C# WS 2010/11 Prof. Dr. Herrad Schmidt
Tags: 
public | event | klassen | msdn | aspx | microsoft | library | meindelegat
Created: 
9/17/2001 2:46:05 PM
Slides: 
7
Views: 
4
Downloads: 
0
Rating: 
0


> Comment



Share this presentation
|

Comments

Share this presentation:

|
Sitemap