14.02.2017 Views

. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

вот водит<strong>е</strong>ль мусоровоза<br />

При о тсутств и и ссылок объ<strong>е</strong>кт<br />

пр<strong>е</strong>враща<strong>е</strong>тся 6 мусор<br />

Если вс<strong>е</strong> ссылки на объ<strong>е</strong>кт исч<strong>е</strong>зают, программа т<strong>е</strong>ря<strong>е</strong>т к н<strong>е</strong>му<br />

доступ. Т<strong>е</strong>п<strong>е</strong>рь объ<strong>е</strong>кт пр<strong>е</strong>дназнач<strong>е</strong>н для сборки мусора<br />

(garbage collection). <strong>C#</strong> избавля<strong>е</strong>тся ото вс<strong>е</strong>х объ<strong>е</strong>ктов, на которы<strong>е</strong><br />

н<strong>е</strong>т ссылок, освобождая м<strong>е</strong>сто в памяти.<br />

^ Вот код создания объ<strong>е</strong>кта.<br />

Guy j о <strong>е</strong> = new G uy()<br />

{ Name = "Joe", Cash = 50<br />

Объ<strong>е</strong>кт оста<strong>е</strong>тся<br />

в куч<strong>е</strong>, пока на н<strong>е</strong>го<br />

<strong>е</strong>сть хотя бы одна<br />

ссылка. Как только<br />

посл<strong>е</strong>дняя ссылка<br />

исч<strong>е</strong>за<strong>е</strong>т, объ<strong>е</strong>кт<br />

удаля<strong>е</strong>тся.<br />

Оп<strong>е</strong>ратор new созда<strong>е</strong>т<br />

новый объ<strong>е</strong>кт,<br />

a ссылочная п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нная<br />

Joe указыва<strong>е</strong>т<br />

на н<strong>е</strong>го.<br />

О Бьхл создан второй объ<strong>е</strong>кт.<br />

Guy bob = new GuyO<br />

{ Name = "Bob", Cash = 75 };<br />

о П усть ссы лка на п<strong>е</strong>рвый экз<strong>е</strong>мпляр начн<strong>е</strong>т<br />

указывать на второй.<br />

j о <strong>е</strong> = b o b ;<br />

Ссылок Нй п<strong>е</strong>рвый<br />

экз<strong>е</strong>мпляр<br />

н<strong>е</strong> осталось...<br />

■■■поэтому<br />

Объ<strong>е</strong>кт<br />

удаля<strong>е</strong>тся!<br />

170 глава 4

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!