• Non ci sono risultati.

costruttori e distruttori

N/A
N/A
Protected

Academic year: 2021

Condividi "costruttori e distruttori"

Copied!
9
0
0

Testo completo

(1)

A. Ferrari

costruttori e distruttori

Java

Alberto Ferrari – Informatica

(2)

A. Ferrari

classe di esempio

public class Punto {

private double x; //ascissa del punto private double y; //ordinata del punto

public Punto() { // Costruttore senza parametri

System.out.println ("E' stato istanziato un punto ");

}

public void finalize(){ // distruttore

System.out.println ("E' stato distrutto un punto ");

}

(3)

A. Ferrari

costruttore

o il costruttore è un metodo particolare che viene invocato alla creazione dell’oggetto

o contiene tutte le istruzioni da eseguire per la sua inizializzazione

o in Java il costruttore deve avere lo stesso nome della classe e non deve essere specificato nessun tipo di

ritorno per il metodo o es.

public Punto() { // Costruttore senza parametri

System.out.println ("E' stato istanziato un punto ");

}

Alberto Ferrari – Informatica

(4)

A. Ferrari

costruttore di copia

o il costruttore di copia consente di istanziare un nuovo oggetto come copia di un oggetto della stessa classe creato in precedenza e fornito come parametro o il codice di un costruttore di copia assegna agli

attributi dell’oggetto in fase di creazione il valore degli omonimi attributi dell’oggetto passato come

parametro

(5)

A. Ferrari

costruttore di copia (esempio)

public class Punto {

private double x; //ascissa del punto private double y; //ordinata del punto

public Punto(Punto p) { // Costruttore di copia this.x = p.x;

this.y = p.y;

}

}

Alberto Ferrari – Informatica

(6)

A. Ferrari

distruttore

o il distruttore è un particolare metodo che viene

invocato automaticamente quando l'oggetto viene distrutto (non ha più riferimenti attivi)

o è stato concepito per liberare le risorse utilizzate dall'oggetto, definite dalla sua classe e create dal

corrispondente costruttore ed eventualmente le altre risorse allocate dinamicamente durante l'esecuzione dei metodi dell'oggetto stesso

(7)

A. Ferrari

il distruttore in Java

o in Java il distruttore si implementa mediante il metodo finalize

o es.

public void finalize(){

System.out.println ("E' stato distrutto un punto ");

}

o il distruttore viene automaticamente attivato dal Garbage collector

Alberto Ferrari – Informatica

(8)

A. Ferrari

garbage collector

o per garbage collection (letteralmente raccolta dei rifiuti) si intende una modalità automatica di gestione della memoria, mediante la quale un sistema operativo, o un compilatore e un modulo di run-time, liberano le porzioni di memoria che non dovranno più essere successivamente utilizzate dalle

applicazioni

Wikipedia

(9)

A. Ferrari

esempio

Alberto Ferrari – Informatica

Punto a;

a = new Punto(); // viene eseguito costruttore a = null;

System.gc(); // viene attivato Garbage collector // in realtà è un suggerimento alla JVM …

// il Garbage collector esegue il distruttore

Riferimenti

Documenti correlati

1. Di prendere atto della rendicontazione presentata dall’Istituto Comprensivo di Tavernola Bergamasca dalla quale emerge che l’Istituto Comprensivo di Tavernola

Il Nucleo di valutazione è chiamato a collaborare al buon andamento dell’attività amministrativa mediante la verifica, il controllo e la valutazione dell’attività

- DI APPROVARE il nuovo schema di convenzione allegato e facente parte integrante e sostanziale alla presente delibera, per la realizzazione del Progetto:TEATRI

Trasmettere copia del presente provvedimento al Dirigente Settore Servizi Finanziari ed al Dirigente del 1° Settore per gli adempimenti di rispettiva competenza;.. Dichiarare, il

Se si ritiene, superfluo, metto ai voti, metto ai voti la proposta così come, Roberto per favore, metto ai voti la proposta così come data per conosciuta e depositata agli atti, chi

Come possiamo osservare nel codice appena scritto, oltre che alla inizializzazione degli attributi, nel secondo costruttore viene anche richiamato un metodo : infatti il costruttore

[r]

ECCEDENZA DI ADDIZIONALE REGIONALE ALL’IRPEF RISULTANTE DALLA PRECEDENTE DICHIARAZIONE (RX2 col. UNICO 2016) RV5