O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Kompaktkurs C# 4.0, 3rd Edition

Book Description

Das Buch beschreibt in kompakter Form den gesamten Sprachumfang von C#, einschließlich der neuen Sprachmerkmale von C# 4.0 wie die Integration von C# mit dynamisch getypten Sprachen über den Datentyp dynamic, neue optionale und benannte Parameter sowie die erweiterte Kompatibilität zwischen generischen Typen. Neben der Sprache C# werden auch diverse Anwendungen und Fallstudien im .NET-Framework behandelt. Zahlreiche Beispiele sowie weit über 100 Übungsaufgaben mit Musterlösungen machen das Buch sowohl für den Einsatz im Unterricht als auch für das Selbststudium geeignet.

Table of Contents

  1. 1 C# und das .NET-Framework
    1. 1.1 Ähnlichkeiten zwischen C# und Java
    2. 1.2 Unterschiede zwischen C# und Java
    3. 1.3 Das .NET-Framework
    4. 1.4 Übungsaufgaben
  2. 2 Erste Schritte
    1. 2.1 Hello World
    2. 2.2 Gliederung von Programmen
    3. 2.3 Symbole
    4. 2.4 Übungsaufgaben
  3. 3 Typen
    1. 3.1 Einfache Typen
    2. 3.2 Enumerationen
    3. 3.3 Arrays
    4. 3.4 Strings
    5. 3.5 Structs
    6. 3.6 Klassen
    7. 3.7 object
    8. 3.8 Boxing und Unboxing
    9. 3.9 Übungsaufgaben
  4. 4 Ausdrücke
    1. 4.1 Arithmetische Ausdrücke
    2. 4.2 Vergleichsausdrücke
    3. 4.3 Boolesche Ausdrücke
    4. 4.4 Bit-Ausdrücke
    5. 4.5 Shift-Ausdrücke
    6. 4.6 Überlaufprüfung
    7. 4.7 typeof
    8. 4.8 sizeof
    9. 4.9 Übungsaufgaben
  5. 5 Deklarationen
    1. 5.1 Deklarationen in Namensräumen
    2. 5.2 Deklarationen in Klassen, Structs und Interfaces
    3. 5.3 Deklarationen in Enumerationstypen
    4. 5.4 Deklarationen in Blöcken
    5. 5.5 Übungsaufgaben
  6. 6 Anweisungen
    1. 6.1 Leeranweisung
    2. 6.2 Zuweisung
    3. 6.3 Methodenaufruf
    4. 6.4 if-Anweisung
    5. 6.5 switch-Anweisung
    6. 6.6 while-Anweisung
    7. 6.7 do-while-Anweisung
    8. 6.8 for-Anweisung
    9. 6.9 foreach-Anweisung
    10. 6.10 break- und continue-Anweisungen
    11. 6.11 goto-Anweisung
    12. 6.12 return-Anweisung
    13. 6.13 Übungsaufgaben
  7. 7 Ein-/Ausgabe
    1. 7.1 Ausgabe auf den Bildschirm
    2. 7.2 Formatierte Ausgabe
    3. 7.3 Ausgabe auf eine Datei
    4. 7.4 Eingabe von der Tastatur
    5. 7.5 Eingabe von einer Datei
    6. 7.6 Lesen der Kommandozeilenparameter
    7. 7.7 Übungsaufgaben
  8. 8 Klassen und Structs
    1. 8.1 Sichtbarkeitsattribute
    2. 8.2 Felder
    3. 8.3 Methoden
    4. 8.4 Konstruktoren
    5. 8.5 Destruktoren
    6. 8.6 Properties
    7. 8.7 Indexer
    8. 8.8 Überladene Operatoren
    9. 8.9 Geschachtelte Typen
    10. 8.10 Partielle Typen
    11. 8.11 Partielle Methoden
    12. 8.12 Statische Klassen
    13. 8.13 Unterschiede zu Java
    14. 8.14 Übungsaufgaben
  9. 9 Vererbung
    1. 9.1 Deklaration von Unterklassen
    2. 9.2 Kompatibilität zwischen Klassen
    3. 9.3 Überschreiben und Verdecken von Elementen
    4. 9.4 Dynamische Bindung
    5. 9.5 Konstruktoren in Ober- und Unterklasse
    6. 9.6 Abstrakte Klassen
    7. 9.7 Versiegelte Klassen
    8. 9.8 Die Klasse Object
    9. 9.9 Übungsaufgaben
  10. 10 Interfaces
    1. 10.1 Deklaration und Verwendung von Interfaces
    2. 10.2 Operationen auf Interfaces
    3. 10.3 Erweiterung von Interfaces
    4. 10.4 Namenskonflikte
    5. 10.5 Interface IDisposable
    6. 10.6 Übungsaufgaben
  11. 11 Delegates und Events
    1. 11.1 Einfache Delegates
    2. 11.2 Multicast-Delegates
    3. 11.3 Erzeugen von Delegate-Werten
    4. 11.4 Ereignisse (Events)
    5. 11.5 Anonyme Methoden
    6. 11.6 Übungsaufgaben
  12. 12 Ausnahmen
    1. 12.1 try-Anweisung
    2. 12.2 Ausnahmeklassen
    3. 12.3 Auslösen von Ausnahmen
    4. 12.4 Ausnahmen in aufgerufenen Methoden
    5. 12.5 Ausnahmen in Multicast-Delegates
    6. 12.6 Übungsaufgaben
  13. 13 Namensräume und Assemblies
    1. 13.1 Namensräume
    2. 13.2 Assemblies
      1. 13.2.1 Assemblies und Module
      2. 13.2.2 Versionierung von Assemblies
      3. 13.2.3 Assemblies versus Namensräume
    3. 13.3 Übungsaufgaben
  14. 14 Generische Bausteine
    1. 14.1 Generische Typen
    2. 14.2 Constraints
    3. 14.3 Vererbung bei generischen Typen
    4. 14.4 Generische Methoden
    5. 14.5 Generische Delegates
    6. 14.6 Nullwerte
    7. 14.7 Was geschieht hinter den Kulissen?
    8. 14.8 Unterschiede zu Java
    9. 14.9 Übungsaufgaben
  15. 15 Threads
    1. 15.1 Die Klasse Thread
    2. 15.2 Zustände eines Threads
    3. 15.3 Abbrechen eines Threads
    4. 15.4 Thread-Synchronisation
    5. 15.5 Übungsaufgaben
  16. 16 Iteratoren
    1. 16.1 Allgemeine Iteratoren
    2. 16.2 Spezifische Iteratoren
    3. 16.3 Übungsaufgaben
  17. 17 Attribute
    1. 17.1 Schreibweise von Attributen
    2. 17.2 Parameter von Attributen
    3. 17.3 Attribute für spezifische Programmelemente
    4. 17.4 Attribut Serializable
    5. 17.5 Attribut Conditional
    6. 17.6 Attribut DllImport
    7. 17.7 Deklaration eigener Attribute
    8. 17.8 Übungsaufgaben
  18. 18 Dokumentationskommentare
    1. 18.1 XML-Elemente
    2. 18.2 Erzeugte XML-Datei
    3. 18.3 Übungsaufgaben
  19. 19 Auszug aus der .NET-Klassenbibliothek
    1. 19.1 Hilfsklassen
    2. 19.2 Collections
    3. 19.3 Ein-/Ausgabe
    4. 19.4 Reflection
    5. 19.5 Übungsaufgaben
  20. 20 LINQ
    1. 20.1 Motivation
    2. 20.2 Lambda-Ausdrücke
    3. 20.3 Erweiterungsmethoden
    4. 20.4 Objektinitialisierer
    5. 20.5 Anonyme Typen
    6. 20.6 Query-Ausdrücke
    7. 20.7 LINQ und XML
    8. 20.8 Übungsaufgaben
  21. 21 Interoperabilität mit COM
    1. 21.1 COM-Objekte von .NET aus ansprechen
    2. 21.2 .NET-Assemblies von COM aus ansprechen
    3. 21.3 Übungsaufgaben
  22. 22 Fallstudien
    1. 22.1 Anwendungen mit grafischer Benutzeroberfläche
    2. 22.2 Ein Web-Service für Börsenkurse
    3. 22.3 Dynamische Webseiten mit ASP.NET
    4. 22.4 Übungsaufgaben
  23. 23 Neuigkeiten in C# 4.0
    1. 23.1 Dynamisch getypte Variablen
    2. 23.2 Optionale Parameter
    3. 23.3 Benannte Parameter
    4. 23.4 Ko- und Kontravarianz bei generischen Typen
  24. A Anhang
    1. A.1 Compileroptionen
    2. A.2 Werkzeuge unter .NET
      1. A.2.1 ildasm
      2. A.2.2 Globaler Assembly-Cache
    3. A.3 Grammatik von C#
    4. A.4 Unicode und ASCII
    5. Literatur
    6. Index