C# 2.0-3.0 Újdonságok

Új indexelők a bináris opciókhoz

Osztályszintű változók csak egyszer tárolódnak el a memóriában, míg a példányszintű változók külön-külön példányonként.

  • Egy nap, Hisham számítógépének Nagy Fájlrendszer Pusztulása után, ő újratelepítette az egész rendszert.
  • Videotanfolyam a robotok kereskedelméről

Új dolog a readonly hozzáférési kategória. Az ilyen változóknak csak két esetben lehet értéket adni: vagy a deklaráláskor vagy a megfelelő konstruktorokban.

Akkor érdemes használni static readonly hozzáférést a const helyett, ha a változót konstansként akarjuk használni, de nem biztos, hogy fordítási időben meg tudjuk adni az értékét. További hozzáférési kategóriák: private csak a tartalmazó osztályban lehet hozzáférni protected csak a tartalmazó osztályból és a származtatott osztályokban lehet használni public nincs korlátozás internal csak a tartalmazó programból lehet használni protected internal ua.

Négyféle paraméterátadási új indexelők a bináris opciókhoz van: Érték szerinti bináris opciók stratégiái 5 perc használata nélkül, primitív típusok esetén Referencia szerinti ref módosítóval vagy referencia típusok esetén Out paraméter out módosítóval, nem jön létre helyfoglalás, hasonlóan a referencia szerinti paraméterhez Tömb paraméter mivel minden object, ezért egy object tömbben bármilyen típust átadhatunk Metódusok is lehetnek osztályszintűek static.

Ilyenkor nem lehet a this kulcsszót, sem példányváltozókat használni. Statikus vagy nem virtuális metódusok esetén a new módosító kulcsszót kell használni, ha egy származtatott osztály egy a bázisosztályéval azonos szignatúrával vezet be egy metódust.

új indexelők a bináris opciókhoz

Ha a new kulcsszót mellőzzük, a fordítóprogram figyelmeztetést ad, nehogy véletlenül definiáljunk felül egy metódust.

Virtuális metódusok esetén az override kulcsszó segítségével kell jeleznünk, hogy az ősosztály virtuális metódusát szeretnénk specializálni.

WriteLine "A. WriteLine "B.

új indexelők a bináris opciókhoz

G A közvetlen ősosztályra a base kulcsszóval hivatkozhatunk. A sealed kulcsszó használatával megakadályozhatjuk, hogy egy osztályból származtassanak vagy egy metódust felüldefiniáljon a származtatott osztály.

új indexelők a bináris opciókhoz

Ha egy metódusnál a sealed override hozzáférést használjuk, akkor új indexelők a bináris opciókhoz meggátoljuk, hogy egy származtatott osztályban felülírjuk ezt a metódust. Az external módosítóval rendelkező metódusok valamilyen más nyelven vannak implementálva.

Éppen ezért a metódus törzsében csak egy pontosvessző áll. Az ilyen metódus nem lehet abstract. Konstruktorok Példány konstruktorok Az osztály egy példányának létrehozásánál hívódik meg. A konstruktor neve megegyezik az osztály nevével.

Rendszergazdai tudnivalók

Négyféle hozzáférési módja lehet egy konstruktornak: public, protected, internal, private. Természetesen definiálhatunk attribútumokat is a konstruktorokhoz. Közvetlenül a konstruktor törzsének végrehajtása előtt automatikusan történik egy másik konstruktor hívás is. Ezt nevezik konstruktor inicializálásnak is.

Kétfajta lehetőségünk van: vagy meghívjuk az ős valamelyik példány konstruktorát, vagy az adott osztály egy másik konstruktorát hívjuk meg először. Ha nem használjuk egyiket sem, akkor az ős alapértelmezett konstruktora hívódik meg.

új indexelők a bináris opciókhoz

Azaz a következő két deklaráció ekvivalens egymással: C Készíthetünk private konstruktorokat is, de ebben az esetben az osztály nem példányosítható és nem lehet örököltetni sem belőle. Akkor célszerű ezt használni, ha pl.

Statikus konstruktorok A konstruktor neve előtt a static kulcsszót kell használni.

A statikus konstruktorok az osztály inicializálásakor futnak le. Ez pontosan akkor van, amikor az ősosztály betöltődik.

új indexelők a bináris opciókhoz

Ezekre a konstruktorokra nem lehet hivatkozni és természetesen nem is öröklődnek. Destruktorok Az objektumok megsemmisülésekor hívódnak meg. Mivel a C -ban is megvalósították az automatikus szemétgyűjtést, ezért a destruktorok automatikusan hívódnak meg, közvetlenül nem lehet őket hívni. A destruktorok az öröklődési láncon végighaladva egymás után hívódnak meg.