![Nerorgasmo - Distruttore](https://i.ytimg.com/vi/AylmRnHS-lk/hqdefault.jpg)
Contenuto
- Definizione: che cosa significa distruttore?
- Un'introduzione a Microsoft Azure e Microsoft Cloud | In questa guida imparerai cos'è il cloud computing e in che modo Microsoft Azure può aiutarti a migrare e gestire la tua azienda dal cloud.
- Techopedia spiega Destructor
Definizione: che cosa significa distruttore?
Un distruttore è un metodo speciale chiamato automaticamente durante la distruzione di un oggetto. Le azioni eseguite nel distruttore includono quanto segue:
- Ripristino dello spazio heap allocato durante la vita di un oggetto
- Chiusura di connessioni file o database
- Rilascio di risorse di rete
- Rilascio di blocchi di risorse
- Altre attività di pulizia
Un'introduzione a Microsoft Azure e Microsoft Cloud | In questa guida imparerai cos'è il cloud computing e in che modo Microsoft Azure può aiutarti a migrare e gestire la tua azienda dal cloud.
Techopedia spiega Destructor
I distruttori sono chiamati esplicitamente in C ++. Tuttavia, in C # e Java non è così, poiché l'allocazione e il rilascio della memoria allocata agli oggetti sono gestiti in modo implicito dal Garbage Collector. Mentre i distruttori in C # e Java (chiamati finalizzatori) non sono deterministici, i distruttori C # sono garantiti per essere chiamati dal runtime .NET. Tuttavia, i finalizzatori Java devono essere esplicitamente richiamati poiché la loro chiamata non è garantita.
Le proprietà chiave dei distruttori possono essere riassunte come segue:
- Invocazione automatica e nessuna chiamata esplicita dal codice utente
- Sovraccarico o eredità non consentiti
- Modificatori di accesso o parametri da non specificare
- L'ordine di chiamata al distruttore in una classe derivata va dal più derivato al meno derivato
- Chiamato non solo durante la distruzione dell'oggetto, ma anche quando l'istanza dell'oggetto non è più idonea all'accesso
- Utilizzato nelle classi ma non nelle strutture
- Utilizzato solo per rilasciare costose risorse non gestite (come Windows, connessione di rete, ecc.) Contenute nell'oggetto, anziché per rilasciare riferimenti gestiti