Erinevus Hävitamise () Ja Lõpuleviimise () Vahel

Sisukord:

Erinevus Hävitamise () Ja Lõpuleviimise () Vahel
Erinevus Hävitamise () Ja Lõpuleviimise () Vahel

Video: Erinevus Hävitamise () Ja Lõpuleviimise () Vahel

Video: Erinevus Hävitamise () Ja Lõpuleviimise () Vahel
Video: Embryonic stem cells | Cells | MCAT | Khan Academy 2024, Mai
Anonim

Peamine erinevus - hävitage () vs lõpule viige ()

Peamine erinevus hävitamise () ja lõpuleviimise () vahel on see, et programmeerija peab selgesõnaliselt kutsuma käsutama (), samal ajal kui objekti lõplikule hävitamisele viitab prügikoguja lõplikule ().

Dispose () on meetod haldamata ressursside, näiteks failide, objekti käes olevate voogude sulgemiseks või vabastamiseks. Lõplik viimistlus on meetod puhastusoperatsioonide teostamiseks praeguse objekti valdamata ressurssidel enne objekti hävitamist.

SISU

1. Ülevaade ja põhierinevus

2. Mis on hävitamine ()

3. Mis on lõpuleviimine ()

4. Sarnasus hävitamise () ja lõpuleviimise () vahel

5. Kõrvuti võrdlus - hävitage () vs lõpetage () tabelivormis

6. Kokkuvõte

Mis on käsutada ()?

. NET raamistiku üks olulisemaid eeliseid on see, et see tagab automaatse prügikoristuse. See vabastab automaatselt kasutamata objektide mälu. Programmeerimiskeeltes nagu C ja C ++ peab programmeerija ise mäluhaldusega hakkama saama. Kuid sellistes keeltes nagu C #, mis on üles ehitatud. NET raamistikule, pakub prügikoguja. See aitab mälu hallata. Seda ei saa kasutada haldamata mäluressursside vabastamiseks. Selle ülesande saavutamiseks saab kasutada meetodit hävitada ().

Erinevus hävitamise () ja lõpuleviimise () vahel
Erinevus hävitamise () ja lõpuleviimise () vahel

Meetodit hävitada () saab kasutada selliste ressursside nagu andmebaasiühendused, failikäsitlejad jne vabastamiseks. Seda meetodit ei kutsuta automaatselt. Seetõttu peaks programmeerija selle meetodi rakendama. Niipea kui sellele meetodile tuginetakse, vabaneb konkreetse haldamata ressursi mälu. See meetod on deklareeritud liideses IDisposeable.

Mis on lõplik ()?

Lõpliku vormistamise meetodit kutsub prügikoguja alles siis, kui viidet objektile enam ei kasutata. Seda meetodit nimetatakse vahetult enne objekti hävitamist. Seda meetodit rakendatakse destruktori abil. Lõpliku vormistamise meetod on määratletud klassis java.lang.object. See meetod tunnistatakse kaitstuks. Teiste klasside juurdepääsu vältimiseks ei kuuluta avalikuks. Üldiselt võib viimistlusmeetod minimeerida programmi jõudlust, kuna see ei vabasta mälu koheselt.

Milline on käsutamise () ja lõpuleviimise () sarnasus?

Nii käsutamist () kui ka vormistamist () saab kasutada haldamata ressursi jaoks eraldatud mälu vabastamiseks

Mis vahe on käsutuses () ja lõpuleviimisel ()?

Erinev artikkel keskel enne tabelit

hävitama () vs lõpule viima ()

Dispose () on meetod haldamata ressursside, näiteks failide, objekti käes olevate voogude sulgemiseks või vabastamiseks. Lõpetamine on meetod praeguse objekti valduses olevate haldamata ressursside puhastamiseks enne objekti hävitamist.
Eesmärk
Kõrvaldamismeetodit kasutatakse haldamata ressursside vabastamiseks, kui see käivitatakse. Lõpetamismeetodit kasutatakse haldamata ressursside vabastamiseks enne objekti hävitamist.
Määratletud liides või klass
Dispose () on määratletud liideses IDisposable. Lõplik vormistamine () on määratletud klassis java.lang.object.
Kutsumine meetod
Programmeerija kutsub kasutama hävitamismeetodit. Lõpliku vormistamise meetodile tugineb prügikoguja.
Juurdepääsu täpsustus
Kõrvaldamismeetod on avalik. Lõpetamismeetod on kaitstud.
Kiirus
Kõrvaldamismeetodile pöördutakse koheselt. Lõpetamismeetodit kasutatakse aeglaselt.
Performance
Kõrvaldamine ei vähenda programmi jõudlust. Lõpetamismeetod võib minimeerida programmi jõudlust.

Kokkuvõte - hävitage () vs lõpule viige ()

Selles artiklis käsitleti erinevust C # -is olevate hävitamis- ja lõplike meetodite vahel. Erinevus hävitamise () ja lõpuleviimise () vahel seisneb selles, et programmeerija peab selgesõnaliselt kutsuma käsutama (), samal ajal kui objekti hävitamiseks viitab prügikoguja lõplikule vormistamisele ().

Soovitatav: