Turinys:
Apibrėžimas - ką reiškia naikintojas?
Naikintojas yra specialus metodas, vadinamas automatiškai sunaikinant objektą. Dstruktoriuje atliekami šie veiksmai:
- Objekto gyvavimo metu paskirtos krūvos vietos atkūrimas
- Failų ar duomenų bazių jungčių uždarymas
- Tinklo išteklių išleidimas
- Išlaisvinamos išteklių spynos
- Kitos namų tvarkymo užduotys
„Techopedia“ paaiškina naikintojas
Naikintojai yra aiškiai vadinami C ++. Tačiau C # ir „Java“ taip nėra, nes objektams skirtos atminties paskirstymą ir išleidimą netiesiogiai tvarko šiukšlių surinkėjas. Nors C # ir „Java“ (vadinamų užbaigiamaisiaisiais) destruktoriai yra neapibrėžti, C # destruktoriams garantuojama, kad jie bus pašaukti .NET vykdymo laiko. Tačiau „Java“ užbaigimo moduliai turi būti aiškiai nurodyti, nes jų pašaukimas nėra garantuojamas.
Pagrindines naikintojų savybes galima apibendrinti taip:
- Automatinis kvietimas ir jokio aiškaus skambučio iš vartotojo kodo
- Negalima perkrauti ar paveldėti
- Prieigos modifikatoriai ar parametrai nenurodomi
- Išvestos klasės iškvietimo į naikintoją tvarka yra nuo labiausiai išvestos iki mažiausiai išvestos
- Skambinama ne tik objekto naikinimo metu, bet ir tada, kai objekto egzempliorius nebegali naudotis
- Naudojamas klasėse, bet ne konstrukcijose
- Naudojamas tik objekto turimiems brangiems nevaldomiems ištekliams (pvz., „Windows“, tinklo ryšiui ir kt.) Išlaisvinti, o ne valdomoms nuorodoms išleisti.
