INF1563 Programmation I


Les constructeurs



L'introduction


Caractéristiques de constructeurs

Un constructeur est une méthode d'une classe donnée, servant à créer des objets.

Exemple :

import java.awt.geom.Point2D;

class Cercle {
  Point2D centre;
  double rayon;

  Cercle(){
    centre = new Point2D.Double(0.0, 0.0);
    rayon = 1;
  }
  Cercle(Point2D c, double r){
    centre = c;
    rayon = r;
  }

  void println(){
    System.out.print("Objet Cercle :\n\tcentre : ");
    System.out.print(centre.toString());
    System.out.println("\n\trayon : " + rayon);
  }
}

Un test de la classe Cercle :

import java.awt.geom.Point2D;
public class TestCercle  {

  public static void main( String [] args ) {
    Cercle c1 = new Cercle();
    Cercle c2 = new Cercle(new Point2D.Double(5,4), 3);
    c1.println();
    c2.println();
  }
}

La sortie :

Objet Cercle :
  centre : Point2D.Double[0.0, 0.0]
  rayon : 1.0
Objet Cercle :
  centre : Point2D.Double[5.0, 4.0]
  rayon : 3.0

Les destructeurs

La machine virtuelle Java se charge de repérer les objets inutiles et de libérer la mémoire inaccessible (faire le ramasse-miettes).

Il est aussi possible de détruire un objet explicitement avec la méthode finalize().

Exemple :

class Cercle {
    //...

    public void finalize() {
        System.out.println("Objet Cercle détruit");
    }
    //...
}