Ein Einsteigerkurs von Christoph Hausner und Samuel Brack

Preview:

Citation preview

Ein Einsteigerkurs von Christoph Hausner und Samuel Brack

http://www.c-sharp.edu.tc/

ThemenübersichtWiederholungKlassendeklarationMethodendeklarationFelderEigenschaften

WiederholungCodeausschnitte sind Codeabkürzungen im Visual Studio

und werden über <Abkürzung><Tab><Tab> eingefügtTypkonvertierungen können implizit, explizit oder mit

der Convert-Klasse durchgeführt werdenSwitches dienen dazu, auf mehrere Bedingungen

gleichzeitig zu prüfenManche Klasse müssen vor deren Verwendung

instanziiert werdenAlle Instanzen sind voneinander vollständig unabhängigArrays können beliebig viele Variablen eines Typs

speichern, auf die man jeweils über ihren Index zugreifen kann

for- und while-Schleifen führen einen Codeblock mehrmals hintereinander aus

KlassendeklarationMan kann nicht nur Klassen aus dem .NET-

Framework verwenden, sondern auch eigene deklarieren, um Code mehrfach verwenden und strukturieren zu können

Diese können dann genauso verwendet werden, wie alle anderen Klassen aus dem Framework

Syntax:namespace Name_des_Namespaces{

public class Name_der_Klasse{

Felder, Methoden, Eigenschaften etc..}

}

MethodendeklarationMethoden sind bereits bekanntSyntax:public class Name_der_Klasse{

public Typ_des_Rückgabewerts Name(Argumente){

// Code}

}

MethodendeklarationZ.B:namespace ConsoleApplication1{

public class Program{

public bool IsSquareNumber(int n){

// Codereturn ...;

}}

}

FelderInterne Variablen einer Klasse, auf die jede

Methode der Klasse Zugriff hatWerden direkt in der Klasse deklariertDienen meist dem Speichern von Daten, auf die

außerhalb der Klasse kein Zugriff notwendig ist und nur intern für die Klasse existieren

Syntax:public class Name_der_Klasse{

Datentyp Name_des_Feldes;}

EigenschaftenÄhnlich den Feldern, es kann jedoch beliebiger

Code beim Zugriff ausgeführt werdenEs kann festgelegt werden, ob eine Eigenschaft

nur lesbar ist (keine Zuweisung möglich), ob eine Eigenschaft nur beschreibbar ist (kein Auslesen möglich), oder ob die Eigenschaft sowohl lesbar als auch beschreibbar ist

Der Code im Getter wird beim Auslesen der Eigenschaft aufgerufen, der Code im Setter wird beim Zuweisen aufgerufen

EigenschaftenWerden häufig verwendet, um Einstellungen, die

eine Klasse verwendet, auszulesen bzw. zu ändernEs kann verhindert werden, dass ungültige Daten

einer Eigenschaft zugewiesen werden (if-Abfrage im Setter)

Öffentliche (public) Felder werden nahezu immer durch Eigenschaften ersetzt

Sind fast immer an ein privates Feld innerhalb der Klasse gebunden, um die zugewiesenen Daten zu speichern und später wieder lesen zu können

Eigenschaften

Klasse

EigenschaftenSyntax:

public class Name_der_Klasse{

Datentyp name_der_Eigenschaft; // privates Feld

public Datentyp Name_der_Eigenschaft{

get // Getter{

// Code, der beim Auslesen // ausgeführt wird

}set // Setter{

// Code, der beim Zuweisen // ausgeführt wird

}}

}

EigenschaftenIm Getter kann der Wert, den die Eigenschaft

zurückgibt, über return angeben werden:return Rückgabewert;

Der return-Befehl dient dazu, die aktuelle Methode zu verlassen und den Rückgabewert der Methode bzw. der Eigenschaft zu setzen (beim Rückgabetyp void darf kein Rückgabewert angegeben werden)

Im Setter kann der Wert, der der Eigenschaft zugewiesen werden wird, über value ausgelesen werden

EigenschaftenSeit C# 3.0: Automatische EigenschaftenEs wird automatisch ein privates Feld innerhalb

der Klasse angelegt und die Daten bei Zuweisung dorthin gespeichert bzw. bei Lesezugriff von dort abgefragt

Weniger Tipparbeit, kompakterer CodeSyntax:public class Name_der_Klasse{

public Datentyp Name_der_Eigenschaft{

get;set;

}}

Codeausschnitt: prop

Recommended