Destruktorius (programavimas)

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Peršokti į: navigaciją, paiešką

Destruktorius – specialus objekto metodas, atsakingas už visų objekto užimamų resursų (atminties, užmegztų tinklo jungčių, laikinų bylų) užleidimą kitiems tikslams[1][2]. Baigus vykdyti destruktoriaus kodą, objektas laikomas „sunaikintu“ – jokie vėlesni kreipiniai į jį nebeleistini.

Pakartotinas destruktoriaus iškvietimas yra rimta programavimo klaida, kurios pasekmės programos vykdymui nenumatomos (angl. undefined behavior).[1] Vengdamos tokių klaidų, naujesnės programavimo kalbos vietoj destruktoriaus naudoja užbaigiklį (angl. finalizer) [3] nors ir to patariama vengti [4].


Šaltiniai[taisyti | redaguoti kodą]

  1. 1,0 1,1 C++ specifikacija (skyrius apie destruktorių)
  2. Pascal specifikacija (skyrius apie destruktorių)
  3. finalize() metodo dokumentacija Oracle Java specificijoje
  4. Joshua Bloch (2008). Creating and Destroying Java Objects