TOC

This article has been localized into Czech by the community.

Třídy:

Úvod do C# tříd

Ve spoustě programovacích výukových programů budou informace o třídách zmíněny mnohem později. Nicméně, jelikož v C# je vše o objektově orientovaném programovaní a tím o třídách, podíváme se na základní úvod k nejdůležitějším funkcím.

Především třída je skupina souvisejících metod a proměnných. Třída popisuje tyto věci a ve většině případů vytvoříte instanci této třídy, kterou nyní nazveme objekt. Na tomto objektu používáte definované metody a proměnné. Samozřejmě si můžete vytvořit tolik instancí vaší třídy, kolik jen chcete. Třídy a objektově orientované programování je obrovské téma. V této i v dalších kapitolách některé aspekty probereme, ale ne všechny.

V kapitole "Hello World" jsme poprvé viděli použití třídy, protože vše v C# je postaveno na třídách. Rozšiřme si naši aplikaci "Hello World" třídou, kterou sami vytvoříme:

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Car car;

            car = new Car("Red");
            Console.WriteLine(car.Describe());

            car = new Car("Green");
            Console.WriteLine(car.Describe());

            Console.ReadLine();

        }
    }

    class Car
    {
        private string color;

        public Car(string color)
        {
            this.color = color;
        }

        public string Describe()
        {
            return "This car is " + Color;
        }

        public string Color
        {
            get { return color; }
            set { color = value; }
        }
    }
}

Máme tu spoustu nového, většina je však založena na věcech, které jsme již použili dříve v tomto tutoriálu. Jak můžete vidět, definovali jsme novou třídu zvanou "Car" (pro přehlednost je definována ve stejném souboru jako naše hlavní aplikace, obvykle však bývají nové třídy samostatně ve svých vlastních souborech). Ta definuje jednu proměnnou, zvanou "color", která nám samozřejmě říká barvu auta. Deklarovali jsme ji jako private, což je dobré jako procvičení - přístup k proměnným zvenčí by měl být prováděn přes vlastnosti (property). Vlastnost "Color" je definována na konci třídy, čímž dává přístup k proměnné "color".

Kromě toho, naše třída "Car" definuje konstruktor. Ten nese parametr, který nám umožňuje inicializovat (vyvolávat) objekty třídy Car s barvou. Dokud zde bude pouze jeden konstruktor, Objekty třídy Car mohou být znázorňovány pouze barvou. Describe() metoda nám umožňuje získat hezkou zprávu s jediným kouskem informace, který jsme o našem autě nahráli. Jednoduše to vrací string s informacemi, které jsme poskytli.

Nyní, v naší hlavní aplikaci, deklarujeme proměnnou typu Car (auto). Po tom vytvoříme novou instanci této třídy s parametrem "Red". Podle kódu naší třídy to znamená, že barva červená bude přiřazena jako barva auta. Abychom to ověřili, voláme metodu Describe() a ukážeme, jak snadno můžeme vytvořit několik instancí téže třídy, uděláme to znovu, ale s jinou barvou. Právě jsme vytvořili naši první funkční třídu a použili ji.

V následujících kapitolách budou podrobněji vysvětleny pojmy jako: vlastnosti, konstruktory a viditelnost.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!