C # Generics (Suomi)
geneerinen tarkoittaa yleistä muotoa, ei spesifistä. C#: ssä yleisnimitys ei ole spesifinen tietylle tietotyypille.
C# – voit määrittää yleisiä luokat, rajapinnat, abstraktit luokat, kentät,menetelmiä, staattisia menetelmiä, ominaisuuksia, tapahtumia, edustajat, ja toimijat, käyttäen tyyppi parametri ja ilman erityisiä tietoja tyyppi. Tyyppi parametri on paikkamerkki tietyn määritetty, kun luodaan esimerkiksi yleinen tyyppi.
yleinen tyyppi ilmoitetaan täsmentämällä tyyppiparametri kulmasulkeissa tyyppinimen jälkeen, esim., TypeName<T>
jossa T
– on tyyppinen parametri.
Geneerinen Luokka
Generic luokat ovat määritelty käyttäen tyyppi parametri kulmassa suluissa jälkeen luokan nimi. Seuraavassa määritellään yleisluokka.
Edellä DataStore
on geneerinen luokka., T
kutsutaan tyyppi parametri, joka voi olla käytetty tyyppi aloilla, ominaisuudet, menetelmä parametrit, palaa tyypit, ja delegoi DataStore
luokka. Esimerkiksi Data
on yleinen ominaisuus, koska meillä on käytetty tyyppi parametri T
kuten sen tyyppi sen sijaan tiettyjen tietojen tyyppi.
T
tyyppi parametri. Voit antaa minkä tahansa nimen tyyppiparametrille., Yleensä T
käytetään, kun on vain yksi tyyppi parametri. On suositeltavaa käyttää enemmän luettavissa tyyppi parametrin nimi kohti vaatimus, kuten TSession
, TKey
, TValue
jne. Lisätietoja Tyyppi Parametri Nimeäminen Ohjeet Voit myös määrittää useita tyypin parametrit pilkulla erotettuna.
Instantiating Generic Class
voit luoda geneeristen luokkien instanssin määrittelemällä todellisen tyypin kulmasulkeissa., Seuraavassa luodaan yleisluokan DataStore
esiintymä.
Edellä, me määritetty string
kirjoita kulma suluissa samalla luodaan instanssi. Niin, T
korvataan string
kirjoita missä T
käytetään koko luokan käännettäessä. Siis, tyyppi Data
omaisuus olisi string
.
seuraava kuva havainnollistaa, miten geneeriset toimii.,
Voit määrittää merkkijonoarvon Data
omaisuutta. Muiden arvojen kuin merkkijonon määrittäminen johtaa kääntöaikavirheeseen.
Voit määrittää eri tietotyyppejä varten erilaisia esineitä, kuten alla.
Geneeristen Luokan Ominaisuudet
- yleinen-luokka lisää uudelleenkäytettävyyttä. Enemmän Tyyppi parametrit tarkoittaa enemmän uudelleenkäytettäviä se tulee., Liika yleistäminen kuitenkin vaikeuttaa koodin ymmärtämistä ja ylläpitämistä.
- yleinen-luokka voidaan perustaa luokan muihin generic tai ei-geneeriset luokat tai abstrakteja luokkia.
- yleisluokka voidaan johtaa muista geneerisistä tai ei-geneerisistä rajapinnoista, luokista tai abstrakteista luokista.
geneeriset kentät
geneerinen luokka voi sisältää geneerisiä kenttiä. Sitä ei kuitenkaan voi alustaa.
seuraavat vakuuttaa, geneerinen array.,
Geneeristen Menetelmiä
menetelmä julisti tyypin parametrit sen paluuarvon tyyppi tai parametrit on nimeltään yleinen menetelmä.
Edellä AddorUpdate()
ja GetData()
menetelmät ovat yleisiä menetelmiä. Todelliset tiedot tyyppi item
parametri on määritetty aikaan instantiating DataStore<T>
luokka, kuten alla.,
geneerinen parametri tyyppi voidaan käyttää useita parametreja kanssa tai ilman ei-geneeristen parametrien ja paluuarvon tyyppi. Jatkotoimet ovat voimassa oleva yleinen ylikuormitusmenetelmä.
ei-geneerinen luokka, joka voi sisältää yleisiä menetelmiä määrittämällä tyyppi parametri kulma suluissa menetelmän nimi, kuten alla.
geneeristen lääkkeiden edut
- geneeristen lääkkeiden edut lisäävät koodin uudelleenkäytettävyyttä. Sinun ei tarvitse kirjoittaa koodia käsitellä eri tietotyyppejä.
- geneeriset aineet ovat tyypiltään turvallisia., Saat compile-time-virheitä, jos yrität käyttää eri tietotyyppiä kuin määrittelyssä määritelty.
- Generic on suorituskyky etu, koska se poistaa mahdollisuuksia boxing-ja unboxing.