public class Exercice3 {
	static public class Identifiant {
		private int numeroSerie;
		public Identifiant(int numeroSerie){
			this.numeroSerie = numeroSerie;
		}
		public void incrementer(){
			this.numeroSerie++;
		}
		public void afficher(){
			System.out.println("    numero de serie : "+this.numeroSerie);
		}
	}

	static public class Jouet{
		private Identifiant identifiant;
		public Jouet( Identifiant identifiant ){
			this.identifiant = identifiant;
		}
		public void afficher(){
			System.out.println("Jouet :");
			this.identifiant.afficher();
		}
	}

	static public class FabriquantJouet{
		private Identifiant identifiantCourant;
		public FabriquantJouet(){
			this.identifiantCourant = new Identifiant(0);
		}
		public Jouet construireJouet(){
			identifiantCourant.incrementer();
			return new Jouet( this.identifiantCourant );
		}
	}

    public static void main(String[] args) {
		FabriquantJouet artisan = new FabriquantJouet(); 
		Jouet jouet1 = artisan.construireJouet();
		jouet1.afficher();

		Jouet jouet2 = artisan.construireJouet();
		jouet1.afficher();
		jouet2.afficher();

		Jouet jouet3 = artisan.construireJouet();
		jouet1.afficher();
		jouet2.afficher();
		jouet3.afficher();
	}
}
