Преглед садржаја:
Дефиниција - Шта значи унесени тип?
Гнездени тип, у Ц #, је тип декларисан унутар постојеће класе или структуре. За разлику од неснијег типа, који је декларисан директно у компилацијској јединици или простору имена, угнијежђени тип је дефинисан унутар опсега који садржи (или спољни) тип.
Гнездени тип користи се само тамо где његов обим, видљивост и век трајања завршавају унутар садржећег типа без излагања другим типовима. Члан пописивача унутар врсте колекције обично се имплементира као угнијежђени тип да би поновио колекцију. Као итератор, пописивач омогућава употребу исте логике на страни клијента за понављање збирке, без обзира на основну структуру збирке података.
Уопштено, угнијежђени тип се користи само у ситуацијама када логично припада типу који садржи. Примјењује се када тип који садржи у потпуности овиси о угнијежђеном типу који помаже у капсулирању детаља имплементације типа који садржи. Често се користи у сценаријима у којима се садржи садржавајући тип који има угнијежђени тип за његову имплементацију директно без икаквих захтјева за инстанцирање угнијежђеног типа.
Техопедија објашњава гнездани тип
Гнезденом типу можете приступити с било којег места у програму декларирајући га јавним нивоом приступачности и користећи потпуно квалификовано име.
На пример, АддрессИнформатион може бити угнијежђен тип деклариран унутар Емплоиее типа, а њему се може приступити користећи потпуно квалифицирано име, Емплоиее.АддрессИнформатион.
Гнездени тип има следећа кључна својства:
- Може имати различите облике приступа који укључују приватну, јавну, заштићену, заштићену унутрашњу и унутрашњу. По дефаулту је приватна приступачност.
- Може приступити приватним и заштићеним члановима врсте која садржи, укључујући било које наслеђене приватне и заштићене чланове. Да бисте приступили тим члановима, инстанца врсте која садржи садржи се угнијежђеном типу преко његовог конструктора.
- Омогућује више нивоа гнежђења, што омогућава да се блок кода једне угнијежђене класе дефинише унутар друге.
- Може наслиједити од врсте која садржи и може се наслиједити.
- Приватни чланови угнијежђеног типа невидљиви су за тип који садржи.
Гнездени тип се не сме користити када мора бити јавно изложен клијентима кодом или ако је на њега директно у позиву клијента. Не може се користити уместо простора имена за конструкције логичког групирања.
