Programmation Java/Instanciation et cycle de vie

Un livre de Wikibooks.

Programmation
Java
Logo java.JPG
Sommaire
IHM avec SWING
Annexes
Modifier ce modèle

Sections

[modifier] L'instruction new

L'instruction new permet d'instancier une classe en utilisant l'un des constructeurs de la classe.

Par exemple pour créer un objet de type MaClasse, on écrit :

 MaClasse cl = new MaClasse("hello");

[modifier] Les constructeurs

Un constructeur est une méthode particulière de la classe appelée lors de la création d'une instance de la classe. Son rôle est d'initialiser les membres de l'objet juste créé. Un constructeur a le même nom que sa classe et n'a pas de valeur de retour.

Dans l'exemple suivant la classe MaClasse dispose de deux constructeurs, l'un ne prenant aucun paramètre et l'autre prenant un paramètre de type String :

public class MaClasse
{
  // Attributs
  private String name;
 
  // Constructeurs
  public MaClasse()
  {
    name = "defaut";
  }
 
  public MaClasse(String s)
  {
    name = s;
  }
}

Toute classe possède un constructeur. Cependant, il n'est pas obligatoire de déclarer un constructeur pour une classe. En effet, si aucun constructeur n'est déclaré dans une classe, un constructeur sans paramètre est ajouté de manière implicite. Celui-ci ne fait rien.


[modifier] Nettoyage

[modifier] Ramasse-miettes (Garbage Collector)

Le ramasse-miettes garde un compteur du nombre de référence pour chaque objet. Dès qu'un objet n'est plus référencé, celui-ci est marqué. Lorque le ramasse-miettes s'exécute (en général quand l'application ne fait rien), les objets marqués sont libérés.

[modifier] Finalisation

Lors de la libération des objets par le ramasse-miettes, celui-ci appelle la méthode finalize() afin que l'objet libère les resources qu'il utilise.

[modifier] Représentation des objets dans la mémoire

[modifier] La pile

[modifier] Le tas

[modifier] Objets dans la pile

[modifier] Constantes et membres static

[modifier] Attributs