Bonjour;

une simple question pour l'instanciation d'un objet :

Quelle est la différence entre l'instanciation d'un objet dans la zone de déclaration des variable d'instance :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
private Set<Compte> comptes=new HashSet<>();
et dans le constructeur de l'objet :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
public Client() {
		super();
		this.comptes=new HashSet<>();
	}
Pour le constructeur, j'ai compris que pour chaque objet, un objet de type Set sera crée, mais pour l'autre cas ?

Une autre question :
A quoi sert la déclaration de
Code : Sélectionner tout - Visualiser dans une fenêtre à part
private static final long serialVersionUID = 1L;
pour chaque classe, et est ce qu'il est conseilé de le déclaré ?

Merci d'avance.