Impressum
Inhalt Datentypen >

Das erste C# Programm

In einer neuen Programmiersprache beginnt man üblicherweise mit einem "Hello world" Programm. Man erweckt sozusagen die Sprache zum Leben. Diese Tradition beibehaltend beginnen wir ebenfalls mit einem solchen Programm in C# (gesprochen: C sharp).
Hier der Quellcode für ein "Hello world" Programm:
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine("Hello world"); Console.ReadKey(); } } }

Hello World auf Youtube

Die enthaltenen Befehle

Befehl Erklärung
Console.Write( string value)
Schreibt den übergebenen String value auf die Console.
Console.WriteLine( string value)
Schreibt den übergebenen String auf die Console und wechselt in die nächste Zeile.
Console.ReadKey()
Wartet auf einen Tastendruck und gibt das eingegebene Zeichen auf der Console aus.
Console.ReadKey( boolean hide)
Wartet auf einen Tastendruck und gibt ihn aus, wenn hide=false ist. Ist hide=true wird nichts ausgegeben.

Namespaces

Namespaces dienen dazu Klassen in sinnvolle Gruppen aufzuteilen. Unsere Klasse Program ist im namespace ConsoleApplication1.

Schreibt jemand anders ebenfalls eine Klasse Program, so kann der Compiler evtl. nicht eindeutig feststellen, welche der beiden Klassen er verwenden soll. Um dieses Problem zu lösen wird der Namensraum (namespace) verwendet:

ConsoleApplication1.Program

bezeichnet unsere Klasse eindeutig.

Eine kleine Analogie: Namensräume sind wie Nachnamen. Will man zwischen zwei Menschen namens Markus unterscheiden, so nimmt man den Nachnamen zu hilfe. Dieser Nachname ist in C# der Namensraum. In einem Namensraum darf es keine zwei Klassen mit gleichem Namen geben, so wie eine Familie keine zwei Kinder gleichen Namens hat (hoffentlich).

Using

Using entlastet den Programmierer.
Die Klasse Console gehört zum Namensraum System. Um diese eindeutig zu benennen müßte ein Programmierer System.Console schreiben.
Für die Klasse StringCollection müßte er gar System.Collections.Specialized.StringCollection angeben. StringCollection gehört zum Namespace Specialized welcher Teil des Namensraums Collections ist, welcher wiederum zu System gehört.
Mit using wird ein Namensraum dem Programm bekannt gemacht, so dass man ihn nicht vor jede Klasse schreiben muss. Durch die Zeile using System; können wir Console ohne vorangestelltes System schreiben.