C# nimmt in der ersten Version von Microsoft.net eine zentrale Stellung ein. Es ist die neueste objektorientierte Programmiersprache, die von Microsoft entwickelt wurde. Sie kombiniert die Leistungsfähigkeit von C++ mit der Benutzerfreundlichkeit von Visual Basic. Dieses Buch ist in drei Teile gegliedert, um den Lesern das Erlernen der C#-Sprache zu erleichtern. Der erste Teil bietet eine umfassende Diskussion der C#-Sprache und beschreibt die in der C#-Sprache definierten Schlüsselwörter, Anweisungen und Funktionen. Außerdem werden E/A-, Dateiverarbeitungs-, Mapping- und Vorverarbeitungsverfahren vorgestellt. In Teil 2 wird die C#-Klassenbibliothek besprochen, die auch . NET-Framework-Klassenbibliothek. Aufgrund des begrenzten Platzes konzentriert sich dieses Buch auf die im System-Namespace enthaltenen Kernklassenbibliotheken. Dieser Teil des Inhalts wird von fast jedem C#-Programmierer verwendet. Teil 3 enthält Beispiele für C#-Anwendungen.
Der Inhalt dieses Buches reicht von oberflächlich bis tiefgreifend und bietet ein breites Anwendungsspektrum. Es eignet sich auch für Leser ohne Programmiererfahrung und Programmierer mit gewissen Kenntnissen in C++ oder Java.
Das Verzeichnis lautet wie folgt:
Teil 1 C#-Sprache
Kapitel 1 Der Ursprung von C#
1.1 Geschichte der C#-Entwicklung
1.2 Wie sich C# auf das .NET Framework bezieht
1.3 Funktionsweise der Universal Language Runtime
1.4 Verwaltbarer Code und nicht verwaltbarer Code
Kapitel 2 C#-Übersicht
2.1 Objektorientierte Programmierung
2.2 Das erste einfache Programm
2.3 Umgang mit Syntaxfehlern
2.4 Eine kleine Verbesserung
2.5 Das zweite einfache Programm
2.6 Ein anderer Datentyp
2.7 Zwei Kontrollanweisungen
2.8 Codeblöcke verwenden
2.9 Semikolon und Positionierung
2.10 Einrückung
2.11 Identifikatoren
2.12 C#-Klassenbibliothek
Kapitel 3 Datentypen, Literale und Variablen
3.1 Bedeutung von Datentypen
3.2 Numerische Typen in C#
3.3 Ganzzahltypen
3.4 Gleitkommatypen
3,5 Dezimaltyp
3,6 Zeichen
3.7 Bool-Typ
3.8 Einige Ausgabeoptionen
3.9 Direktmenge
3.10 Variablen
3.11 Umfang und Nutzungszeitraum von Variablen
3.12 Typkonvertierung und Zwang
3.13 Typkonvertierung in Ausdrücken
Kapitel 4 Operatoren
4.1 Arithmetische Operatoren
4.2 Vergleichsoperatoren und logische Operatoren
4.3 Zuweisungsoperator
4.4 Bitoperatoren
4,5? Operator
4.6 Abstände und Klammern
4.7 Operator-Vorrang
Kapitel 5 Programmkontrollanweisungen
5.1 if-Anweisung
5.2 Switch-Anweisung
5.3 for-Schleife
5.4 while-Schleife
5.5 Do-While-Schleife
5.6 foreach-Schleife
5.7 Verwenden Sie die break-Anweisung, um die Schleife zu verlassen
5.8 continue-Anweisung
5.9 goto-Anweisung
Kapitel 6 Klassen, Objekte und Methoden
6.1 Grundlagen des Unterrichts
6.2 So erstellen Sie Objekte
6.3 Referenzvariablen und Zuweisung
6.4 Methoden
6.5 Konstruktor
6,6 neuer Betreiber
6.7 Garbage Collection und Destruktoren
6.8 dieses Schlüsselwort
Kapitel 7 Arrays und Strings
7.1 Array
7.2 Mehrdimensionale Arrays
7.3 Nicht integrierte Arrays
7.4 Array-Referenzen zuweisen
7.5 Längenattribut
7.6 foreach-Schleife
7.7 Zeichenfolge
Kapitel 8 Methoden und Klassen
8.1 Zugriffskontrolle für Klassenmitglieder
8.2 Objekte an Methoden übergeben
8.3 Ref-Parameter und Out-Parameter
8.4 Die Anzahl der Argumente ist variabel
8.5 Rückgabeobjekt
8.6 Methodenüberladung
8.7 Konstruktoren überladen
8.8 Main()-Methode
8.9 Rekursion
8.10 statisches Schlüsselwort
Kapitel 9 Überlastung des Bedieners
9.1 Grundlagen der Operatorüberlastung
9.2 Handhabung von Vorgängen für interne C#-Typen
9.3 Überladen von Vergleichsoperatoren
9.4 Überladung von wahr und falsch
9.5 Logische Operatoren überladen
9.6 Konvertierungsoperatoren
9.7 Tipps und Einschränkungen zur Überlastung des Bedieners
9.8 Ein weiteres Beispiel für eine Überlastung des Bedieners
Kapitel 10 Indizes und Eigenschaften
10.1 Index
10.2 Eigenschaften
10.3 Verwendung von Indizes und Eigenschaften
Kapitel 11 Vererbung
11.1 Grundlagen der Vererbung
11.2 Mitgliederzugriff und Vererbung
11.3 Konstruktoren und Vererbung
11.4 Vererbung und Namensverbergung
11.5 Mehrstufige Hierarchien erstellen
11.6 Wann Konstruktoren aufgerufen werden sollen
11.7 Basisklassenreferenzen und abgeleitete Objekte
11.8 Virtuelle Methoden und Überladung
11.9 Verwendung abstrakter Klassen
11.10 Versiegelt verwenden, um Vererbung zu verhindern
11.11 Objektklasse
Kapitel 12 Schnittstellen, Strukturen und Aufzählungen
12.1 Schnittstelle
12.2 Schnittstellenreferenzen verwenden
12.3 Schnittstelleneigenschaften
12.4 Schnittstellenindex
12.5 Schnittstellen können vererbt werden
12.6 Schnittstellenvererbung führt zum Ausblenden von Namen
12.7 Explizite Implementierung
12.8 Auswahl zwischen Schnittstellen und abstrakten Klassen
12.9 .NET-Standardschnittstelle
12.10 Beispieluntersuchung von Schnittstellen
12.11 Struktur
12.12 Aufzählungen
Kapitel 13 Ausnahmebehandlung
13.1 System.Exception-Klasse
13.2 Grundlagen der Ausnahmebehandlung
13.3 Folgen nicht erfasster Ausnahmen
13.4 Ausnahmen ermöglichen eine angemessene Fehlerbehandlung
13.5 Verwendung mehrerer Catch-Anweisungen
13.6 Alle Ausnahmen abfangen
13.7 Verschachtelte Try-Module
13.8 Ausnahmen auslösen
13.9 abschließende Aussage
13.10 Detaillierte Analyse von Ausnahmen
13.11 Abgeleitete Ausnahmeklassen
13.12 Ausnahmen abgeleiteter Klassen abfangen
13.13 geprüfte Aussagen und ungeprüfte Aussagen
Kapitel 14 Eingabe und Ausgabe
14.1 Die E/A von C# basiert auf Datenströmen
14.2 Datenflussklasse
14.3 Konsolen-E/A
14.4 Dateidatenströme und byteorientierte Datei-I/O
14.5 Zeichenbasierter Datei-I/O
14.6 Standard-Datenströme umleiten
14.7 Binärdaten lesen und schreiben
14.8 Direktzugriffsdateien
14.9 MemoryStream-Klasse
14.10 StringReader-Klasse und StringWriter-Klasse
14.11 Konvertieren Sie eine numerische Zeichenfolge in ihre interne Darstellung
Kapitel 15 Agenten und Ereignisse
15.1 Agent
15.2 Ereignisse
15.3 .NET-Ereignisprinzipien
15.4 Anwendungsveranstaltungen: Fallstudie
Kapitel 16 Namespaces, Präprozessoren und Assemblies
16.1 Namensräume
16.2 Präprozessor
16.3 Assembly- und interne Zugriffsmodifikatoren
Kapitel 17 Laufzeittyp-IDs, Zuordnungen und Eigenschaften
17.1 Identifizierung des Laufzeittyps
17.2 Zuordnung
17.3 Zuordnungen verwenden
17.4 Eigenschaften
17.5 Integrierte Eigenschaften verwenden
Kapitel 18 Unsicherer Code, Zeiger und andere Themen
18.1 Unsicherer Code
18.2 Weitere Schlüsselwörter
18.3 const und volatile
Teil 2 C#-Klassenbibliothek
Kapitel 19 System-Namespace
19.1 Mitglieder des Systems
19.2 Mathematikunterricht
19.3 Struktur numerischer Typen
19.4 Array-Klasse
19.5 BitConverter-Klasse
19.6 Verwenden Sie Random, um Zufallszahlen zu generieren
19.7 Speicherverwaltung und GC-Klassen
19.8 Objektklasse
19.9 IComparable-Schnittstelle
19.10 IConvertible-Schnittstelle
19.11 ICloneable-Schnittstelle
19.12 IFormatProvider-Schnittstelle und IFormattable-Schnittstelle
Kapitel 20 Zeichenfolgen und Formatierung
20.1 Strings in C#
20.2 String-Klasse
20.3 Formatierung
20.4 Formatieren von Daten mit String.Format() und ToString()
20.5 Erstellen benutzerdefinierter Zahlenformate
20.6 Datum und Uhrzeit formatieren
20.7 Aufzählungen formatieren
Kapitel 21 Multithread-Programmierung
21.1 Multithreading-Grundlagen
21.2 Thread-Klasse
21.3 Bestimmen Sie die Endzeit des Threads
21.4 IsBackground-Eigenschaft
21,5 Thread-Priorität
21.6 Synchronisierung
21.7 Thread-Kommunikation mit Wait(), Pulse() und PulseAll()
21.8 MethodImplAttribute-Attribut
21.9 Threads anhalten, fortsetzen und stoppen
21.10 Thread-Status ermitteln
21.11 Verwendung des Hauptthreads
21.12 Multithreading-Tipps
21.13 Unabhängige Aufgaben starten
Kapitel 22: Versammlung
22.1 Sammlungsübersicht
22.2 Sammlungsschnittstelle
22.3 DictionaryEntry-Struktur
22.4 Allgemeine Sammlungsklasse
22.5 Verwendung von BitArray zum Speichern von Bits
22.6 Privatsammlungen
22.7 Zugriff auf Sammlungen über Schalter
22.8 Speichern benutzerdefinierter Klassen in Sammlungen
22.9 Zusammenfassung
Kapitel 23 Vernetzung über das Internet
23.1 Mitglieder von System.Net
23.2 Einheitlicher Ressourcenbezeichner
23.3 Grundlagen des Internetzugangs
23.4 Umgang mit Netzwerkfehlern
23,5 Uri-Klasse
23.6 Zugriff auf zusätzliche HTTP-Antwortinformationen
23.7 MiniCrawler: Fallstudie
23.8 WebClient verwenden
Der dritte Teil wendet C# an
Kapitel 24 Bauteile
24.1 Das Konzept der Komponenten
24.2 Konzept der C#-Komponenten
24.3 IComponent-Schnittstelle
24.4 Komponentenklasse
24.5 Eine einfache Komponente
24.6 Dispose() überladen
24.7 Verwendung der using-Anweisung
24.8 Container
24.9 Komponenten sind die Zukunft der Programmierung
Kapitel 25 Erstellen formularbasierter Windows-Anwendungen
25.1 Eine kurze Geschichte der Windows-Programmierung
25.2 Zwei Möglichkeiten zum Schreiben formularbasierter Windows-Anwendungen
25.3 Methoden für Windows zur Interaktion mit Benutzern
25.4 Windows Forms
25.5 Formularbasierte Windows-Rahmenprogramme
25.6 Schaltflächen hinzufügen
25.7 Nachrichtenverarbeitung
25.8 Nachrichtenfelder verwenden
25.9 Ein Menü hinzufügen
25.10 Zusammenfassung
Kapitel 26 Rekursiver Ausdrucksanalysator
26.1 Ausdrücke
26.2 Ausdrücke analysieren: Probleme
26.3 Ausdrücke analysieren
26.4 Ausdrücke analysieren
26.5 Ein einfacher Ausdrucksparser
26.6 Variablen zum Analysator hinzufügen
26.7 Syntaxprüfung in rekursiven Parsern
26.8 Einige Versuche
Anhang A XML-Kommentare Kurzreferenz Anhang BC# und Robotik
Expandieren