C# jest w pełni obiektowym językiem programowania. W takim przypadku mówi się, że program taki składa się w wielu różnych obiektów, które oddziałują ze sobą za pomocą akcji – potocznie akcje te nazywane są metodami. Obiekty tego samego rodzaju nazywa się obiektami, które mają ten sam typ.

Łatwiej będzie to zrozumieć na przykładzie. Przyjrzymy się obiektowi Rectangle. Obiekt taki posiada pola takie jak długość i szerokość. W zależności od projektu programu może się okazać, że trzeba przygotować sposoby przyjmowania wartości przez te pola a następnie obliczania powierzchni.

Proszę spojrzeć na poniższą implementację klasy Rectangle oraz omówienie podstawowej składni języka C#:
namespace PodstawowaSkladania_Rectangle
{
    class Program
    {
        // Wykonanie programu
        static void Main(string[] args)
        {
            Rectangle r = new Rectangle();
            r.AkceptujDetale();
            r.WyswietlPodusmowanie();
            // W przypadku braku poniższej linijki program zostanie wykonany, konsola zostanie wyświetlona
            // na ułamki sekund, nie będziemy w stanie dostrzec efektu działania naszego programu.
            Console.ReadKey();
        }
    }
    // Definicja klasy Rectangle wraz z polami oraz metodami
    class Rectangle
    {
        // Zmienne użytkownika
        double dlugosc;
        double szerokosc;
        // Metoda ustawiająca wartości parametrów na starcie
        public void AkceptujDetale()
        {
            dlugosc = 10;
            szerokosc = 20;
        }
        // Obliczanie powierzchni
        public double ObliczPowierzechnie()
        {
            return dlugosc * szerokosc;
        }
        // Wyświetlenie wyników działania programu w konsoli
        public void WyswietlPodusmowanie()
        {
            Console.WriteLine("Długość: {0}", dlugosc);
            Console.WriteLine("Szerokość: {0}", szerokosc);
            Console.WriteLine("Powierzchnia: {0}", ObliczPowierzechnie());
        }
    }
}
Efekt wykonania powyższego kodu to:
Długość: 10
Szerokość: 20
Powierzchnia: 200

Słowo kluczowe: using

Pierwsze polecenie w każdym programie to: using System
Słowa kluczowego używamy aby dodać do naszego program dany namespace. Program taki może w sobie zawierać wiele takich klauzur.

Słowo kluczowe: class

Słowo kluczowe, które służy do deklaracji klasy.

Komenatrze w języku C#

Komenatrzy używamy do wyjaśniania kodu. Kompilator ignoruje wpisy wewnątrz komenatrza. W języku C# mamy dwie możliwości dodawania komenatrzy. Pierwszy z nich pozwala na komentowanie wielu linii na raz -> /* … /*.
Druga możliwość to komentarz dla pojedycznej linii -> // treść komenatarza.

Zmienne użytkownika

Zmienne użytkownika nazywane są również polami. Używane są do przechowywania danych. W powyższym programie klasa Rectangle posiada dwie zmienne użytkownika, długość oraz szerokość.

Metody użytkownika

Metody w klasie odpowiadają za wykonywanie określonych zadań. Metody danej klasy są zdeklarowane wewnątrz tej klasy. W powyższym przykładzie klasy Rectangle możemy wymieć trzy metody: AkceptujDetale(), ObliczPowierzechnie(), WyswietlPodusmowanie().

Instancja danej klasy

W powyższym programie w klasie Program zawierającej metodę Main możemy zauważyć inicjowanie naszej klasy.

Identyfikatory

Identyfikator to nazwa używana do identyfikacji klasy, zmiennej, metody oraz innych elementów zdefiniowanych przez użytkownika.
Podstawowe zasady nazewnictwa w języku C#:
  • nazwa musi zaczynać się od litery, po której może pojawić się ciąg znaków, liter czy podkreśleń. Pierwszym znakiem nie może być cyfra;
  • nazwa nie może zawierać żadnego z wbudowanych czy zarezerwowanych znaków takich jak -> - + ! @ # % ^ & * ( ) [ ] { } . ; : " ' / oraz \. Warto mieć w pamięci, że dopuszczalnym znakiem jest natomiast (_).
  • nazwy nie mogą być również słowami kluczowymi języka C#.

Słowa kluczowe

Słowa kluczowe to słowa zarezerwowane przez kompilator języka C#. Nazwy te nie mogą być używane jako identyfikatory. Jednakże, jeżeli chcemy używać tych słów jako naszych identyfikatorów jest to możliwe po zastosowaniu prefiksu: @.

W C# niektóre z identyfikatorów mają specjalne znaczenie w kontekście kodu. Zaliczamy do nich m.in. get oraz set.

Poniższa tabela zawiera listę słów kluczowych oraz słów kluczowych w kontekście danego kodu:

Zarezerowane słowa kluczowe w języku C#:
abstract as base bool break byte case catch char checked class const continue decimal
default delegate do double else enum event explicit extern false finally fixed float for
foreach goto if implicit in in (generic modifier) int interface internal is lock long namespace new
null object operator out out (generic modifier) override params private protected public readonly ref return sbyte
sealed short sizeof stackalloc static string struct switch this throw true try typeof uint
ulong unchecked unsafe ushort using virtual void volatile while

Słowa kluczowe zależne od kontekstu:
add alias ascending descending dynamic from get global group
into join let orderby partial (type) partial (method) remove select set