C# Konspekt

Loome class Startclass.cs.

C# puhul näeb lühim tervikprogramm välja ligikaudu järgmine:

class Startclass
{
    public static void Main(string[] args)
    {
        Console.WriteLine("Tere tulemast!");
    }
}

Kasutame muutuja eesnimi tekstilises formaadis. Küsime eesnimi kasutajast.

string eesnimi = Console.ReadLine();

Korrutame arveid sisenenud tekstist.

int arv1 = int.Parse(Console.ReadLine());
int arv2 = int.Parse(Console.ReadLine());

Valikute konstruktsioonid

if else näide:

if (eesnimi.ToLower()=="juku")
{
    Console.WriteLine("Tule minu juurde külla!");
}
else
{
    Console.WriteLine("Täna mind kodus pole!");
}

switch näide:

public static string Kuu_nimetus(int kuu_nr)
{
    string kuu = "";
    switch (kuu_nr)
    {
        case 1: kuu = "Jaanuar"; break;
        case 2: kuu = "Veebruar"; break;
        case 3: kuu = "Märts"; break;
        case 4: kuu = "Aprill"; break;
        case 5: kuu = "Mai"; break;
        case 6: kuu = "Juuni"; break;
        case 7: kuu = "Juuli"; break;
        case 8: kuu = "August"; break;
        case 9: kuu = "September"; break;
        case 10: kuu = "Oktoober"; break;
        case 11: kuu = "Novemberr"; break;
        case 12: kuu = "Detsember"; break;

        default:
            kuu = "???";
            break;
    }
    return kuu;
}

else if näide:

public static string Hooaeg(int kuu_nr) 
{
    string hoo = "";
    if (kuu_nr==1 || kuu_nr==2 || kuu_nr==12) //&& - and, || - or
    {
        hoo = "Talv";
    }
    else if (kuu_nr>2 && kuu_nr<6)
    {
        hoo = "Kevad";
    }
    else if (kuu_nr > 5 && kuu_nr < 9)
    {
        hoo = "Suvi";
    }
    else if (kuu_nr > 8 && kuu_nr < 12) //9,10,11
    {
        hoo = "Sügis";
    }
    else
    {
        hoo = "???";  
    }
        return hoo;
}

Kordused

while tsükkel näide

int nr=1;
while(nr<=5) {
    Console.WriteLine("Tere, {0}. matkaja!", nr);
    nr=nr+1;
}

for tsükkel näide

for(int nr=1; nr<=5; nr++) {
    Console.WriteLine("Tere, {0}. matkaja!", nr);
}

do while näide:

int nr = 0;
do {
    Console.WriteLine("Tere, {0}. matkaja!", nr);
    nr=nr+1;
} while(nr != 5);

Lihtsa klassi loomise näide

Klass Isik, millel on väärtused Nimi ja Vanus ja on olemas konstruktor.

namespace oops;

public class Inimene
{
    public string Nimi;
    public int Vanus;

    public void Tervita()
    {
        Console.WriteLine($"Tere! Mina olen {Nimi}!");
    }
}

Pärilus (inheritance)

✔ Mis on pärilus?

Võimalik laiendada või muuta käitumist.

Võimaldab luua uue klassi olemasoleva põhjal.

Alamklass pärib kõik vanema omadused ja meetodid.

public class Töötaja : Inimene
{
    public string Ametikoht;

    public void Töötan()
    {
        Console.WriteLine($"{Nimi} töötab ametikohal {Ametikoht}.");
    }
}

Abstraktsioon (abstraction)

Mis on abstraktsioon?

  • Peidab keerulise loogika ja näitab ainult vajalikku infot.
  • Kasutatakse abstraktsete klasside ja liideste abil.
public abstract class Loom
{
    public string Nimi;

    public abstract void TeeHääl();
}

public class Koer : Loom
{
    public override void TeeHääl()
    {
        Console.WriteLine("Auh-auh!");
    }
}