Členové třídy

Autor: Lewis Jackson
Datum Vytvoření: 8 Smět 2021
Datum Aktualizace: 14 Smět 2024
Anonim
Členové třídy - Technologie
Členové třídy - Technologie

Obsah

Definice - Co znamenají členové třídy?

Členové třídy v C # jsou členové třídy, která reprezentují data a chování třídy.

Členové třídy jsou členové deklarovaní ve třídě a všichni členové (kromě konstruktorů a destruktorů) deklarovaní ve všech třídách v hierarchii dědičnosti.

Členové třídy mohou být následujících typů:


  • Konstanty představující konstantní hodnoty
  • Pole představující proměnné
  • Metody poskytování služeb, jako je výpočet nebo jiné akce s jeho členy
  • Vlastnosti, které definují funkce třídy a zahrnují akce k jejich načtení a úpravě
  • Události generované pro komunikaci mezi různými třídami / objekty
  • Indexery, které pomáhají v přístupu k instancím třídy podobným polím
  • Operátoři, kteří definují sémantiku při použití ve výrazech s instancemi třídy
  • Konstruktory instance k inicializaci členů instance třídy
  • Statický konstruktor pro inicializaci samotné třídy
  • Destruktory pro provádění akcí, které je třeba provést před odstraněním instancí třídy
  • Typy, které jsou místní pro třídu (vnořený typ)


Členové třídy mohou být specifikováni jednotlivě s některou z následujících přístupností:


  • Veřejné - přístupné jakýmkoli kódem v aktuální nebo externí sestavě
  • Chráněno - přístupnost ve stejné třídě nebo odvozené třídě
  • Soukromá - přístupnost ve stejné třídě
  • interní - přístupnost v aktuální sestavě
  • chráněná interní - přístupnost v rámci aktuální sestavy nebo tříd odvozených od obsahující třídy

Na rozdíl od Java, kde je výchozí úroveň přístupnosti člena třídy veřejná, je v C # soukromá.

Úvod do Microsoft Azure a Microsoft Cloud | V této příručce se dozvíte, o čem cloud computing je a jak vám může Microsoft Azure pomoci migrovat a řídit podnikání z cloudu.

Techopedia vysvětluje členy třídy

Členové třídy jsou inicializováni v konstruktorech, které mohou být přetíženy různými podpisy. Pro třídy, které nemají konstruktor, bude vygenerován výchozí konstruktor, který inicializuje členy třídy (na výchozí hodnoty).

Na rozdíl od C ++ umožňuje C # třídě zdědit pouze jednu základní třídu. Třída však může pocházet z více rozhraní, ale všechny členy rozhraní musí být implementovány. Tito členové implementačních rozhraní třídy jsou ve výchozím nastavení veřejně viditelní a nemohou mít jiné modifikátory přístupu.

Všichni členové základní třídy kromě konstruktorů jsou zděděni v odvozené třídě. Odvození členové třídy mohou skrýt člena základní třídy, pro které je třeba použít nové klíčové slovo, což znamená, že základní člen není přepsán a vyhnout se varováním kompilátoru.

Člen statické třídy je členem statické třídy (nelze ji vytvořit ani zdědit), ke které lze přistupovat pouze pomocí názvu třídy. Na rozdíl od člena instance má jednu kopii statického člena, která je inicializována před prvním přístupem a před jeho statickým konstruktorem (pokud existuje).

Členové abstraktní třídy brání přímé instanci a pro použití musí být implementováni do odvozené třídy. Aby nedošlo ke zdědění třídy nebo členů třídy, lze třídu nebo její členy prohlásit za „zapečetěné“. Členy třídy lze použít jako konstantu "kompilace" pomocí modifikátoru "const" a jako runtime konstanty pomocí modifikátoru "readonly".

Při deklaraci členů třídy do nového prostoru prohlášení platí následující pravidla:


  • S výjimkou konstruktorů a destruktorů musí mít všichni ostatní členové jméno odlišné od názvu třídy
  • Jména konstanty, pole, vlastnosti, události nebo typu musí být v rámci třídy jedinečná
  • Více metod lze deklarovat se stejným názvem, ale jejich podpis by se měl lišit
  • Podpis indexátoru a operátora musí být jedinečný mezi těmi, které jsou deklarovány ve třídě
  • Člen třídy nemůže mít vyhrazené podpisy, což jsou názvy členů vyhrazené pro vlastnosti, události, indexování a „Finalizace“.
  • Typ člena, parametr a návratová hodnota metody, delegáta nebo indexátoru by měl být přístupný jako samotný člen
  • Uživatelem definovaní operátoři musí mít úroveň přístupu veřejnou
Tato definice byla napsána v konu C #