C Programozsi nyelv Alapismeretek Objektumorientlt nyelv Microsoft fejlesztette

C# Programozási nyelv

Alapismeretek • Objektumorientált nyelv • Microsoft fejlesztette ki a. NET keretrendszer részeként • 2001 -ben jelent meg • A program több fordítási egységből vagy fájlból áll • Használják: mobil, asztali, web applikációknál, web szervernél, web oldalakon, VR-nál, adatbázis applikációknál, játékoknál (pld. Unity engine) stb. . • Kis-nagybetű érzékeny

Változók (főbb változók) Változó név Méret int 4 bytes long 8 bytes float 4 bytes double 8 bytes bool 1 bit char 2 bytes string 2 bytes per character

Kommentek /*Több soros kommentet Így lehet írni*/ //Egysoros komment

Ciklusok -While loop (amíg ciklus) -Do/While loop (hátultesztelő ciklus) -For loop (számláló ciklus) -Foreach loop

While loop bool is. True = true; while(is. True) { System. Console. Write. Line(”Végtelen ciklus. . . ”); }

Do/While loop bool is. True = true; do { System. Console. Write. Line(”Végtelen ciklus. . . ”); } while(is. True);

For loop for (int i = 0; i < 10; i++) { System. Console. Write. Line(”Jelenlegi szam: ” + i); }

Foreach loop foreach(var item in lista) { System. Console. Write. Line(”Jelenlegi lista elem: ” + item); }

If. . . Else int homerseklet = 30; if(homerseklet < 25) { System. Console. Write. Line(”Hideg az idő”); } else if(homerseklet > 25) { System. Console. Write. Line(”Meleg az idő”); } else { System. Console. Write. Line(”Jó az idő”); }
![Tömbök int[] array 1 = new int[2] {1, 2}; int[] array 2 = {1, Tömbök int[] array 1 = new int[2] {1, 2}; int[] array 2 = {1,](http://slidetodoc.com/presentation_image_h2/63a0ac029de11c6c7f6626eecfa7b82f/image-11.jpg)
Tömbök int[] array 1 = new int[2] {1, 2}; int[] array 2 = {1, 2, 3, 4}; int[] array 3 = new int[];

Metódusok class Program { public static int osszead(int a, int b) { return a + b; } public static void Main(string[] args) { System. Console. Write. Line(” 2 + 4 = ” + osszead(2, 4)); } }

Osztályok hozhatóak létre. Ettől lesz OOP a nyelv. Osztályokat használnak arra, hogy átláthatóbb legyen a kód, többször is fel lehessen használni adatokat kevés kódolással stb…

Osztályok class Program { public class Allat { public string nev; public Allat(string nev) { this. nev = nev; } } public static void Main(string[] args) { Allat kormos = new Allat(”Kormos”); System. Console. Write. Line(kormos. nev); } }

Hozzáférési lehetőségek -Belehet állítani a hozzáféri lehetsőget, láthatóságot osztályoknak, metódusoknak, változóknak stb. . . -public: minden osztály lássa -private: csak az az osztály lássa amiben elhelyezkedik -protected: azonos osztályban látható, továbbá öröklődéssel is megoldható (később lesz szó róla) -internal: ugyanazon a projekten belül érhetőek el csak

Öröklődés Egy osztály tudja örökölni egy másik osztálynak a tulajdonságait. Ez főleg, akkor jó, ha azonos tulajdonságai vannak különböző osztályoknak. Például minden ember iszik vizet, szóval innivalük közé közösbe be lehet rakni és nem kell minden embernél berakni, csak örökölnie kell.

Öröklődés class program { class A { protected int x = 1; } class B : A { static void Main() { var a = new A(); a. x = 100; //nem jó mivel nem lehet így hozzáférni a protected láthatóság miatt var b = new B(); b. x = 100; //jó mert B osztály örökölte az A osztály tartalmát } } }

Properties (get/set) Privát láthatósággal ellátunk egy változót egy osztályban, akkor az csak osztályon belül látszódik, de néha el akarjuk érni kívűlről is, erre jó a properties. Lehet write-only, read-only vagy vegyes is.

Properties (get/set) class Ember { private string nev; public string Nev { get { return nev; } set { nev = value; } } }

Absztrakt osztályók/metódusok Akkor használjuk általában, ha csak fontos információt akarjuk, hogy lássák mások. Absztrakt osztály: csak öröklődő osztályból lehet elérni Absztrakt metódus: csak absztrakt osztályban lehet használni, és nincsen body-ja (üres metódus)

Absztrakt osztályók/metódusok abstract class Allat { public abstract void Hang(); public void Alvas() { System. Console. Write. Line(”zzz”); } } class Kutya : Allat { public override void Hang() //felül kell írni az override paranccsal { System. Console. Write. Line(”A kutya ugat”); } }

Interfész Ez egy absztrakt osztály lényegében, de itt nem kell override parancsot használni.

Enum egy különleges osztály, ami egy csoport konstanst tartalmaz. enum Szint { Konnyu, Kozepes, Nehez }

Kivételkezelés try { //valami amit ki akarunk próbálni } catch(Exception e) { //itt lehet kezelni az errort }

class program { static private void Keszitette(string nev) { return nev; } static public void Main(string[] args) { System. Console. Write. Line(Keszitette(”Földes Dániel”)); //források: https: //www. w 3 schools. com/ } }
- Slides: 25