Bonjour tout le monde
apres uen docuementation sur le pattern factory, j'ai pu réaliser cet exemple qui l'implemente :

Vehicule :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package dp.factory.exemple;

public class Vehicule {
	
	private String marque;
	private int nbrRoues;
	
	public String getMarque() {
		return marque;
	}
	public void setMarque(String marque) {
		this.marque = marque;
	}
	public int getNbrRoues() {
		return nbrRoues;
	}
	public void setNbrRoues(int nbrRoues) {
		this.nbrRoues = nbrRoues;
	}
	
}
Moto :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
package dp.factory.exemple;

public class Moto extends Vehicule{
	
}
Voiture :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
package dp.factory.exemple;

public class Voiture extends Vehicule{

}
Ma Factory :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package dp.factory.exemple;

public class VehiculeFactory {
	
	public static Vehicule getVehicule(String type){
		Vehicule v = null;
		if("moto".equals(type)){
			v = new Moto();
		}else if("voiture".equals(type)){
			v = new Voiture();
		}
		return v;
	}

}
classe de test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
package dp.factory.exemple;

public class TestFactory {


	public static void main(String[] args) {
		Moto moto = (Moto)VehiculeFactory.getVehicule("moto");
		moto.setMarque("Yamaha");
	}

}
Ce que je vois jusquàmaintenant comme avantage de ce pattern est la disparition des 'new' puisque la creation se fait dans la factory, mais les choses sont encore pas claires à propos l'interet de ce pattern. Pouvez vous m'aidez ?
ET merci d'avance.