class Image extends Forme { final int IMAGE_MAX_SIZE = 100; Forme[] formeCollection; int formeNumber; Image() { super(); formeCollection = new Forme[IMAGE_MAX_SIZE]; formeNumber = 0; } Image(Point p) { super(p); formeCollection = new Forme[IMAGE_MAX_SIZE]; formeNumber = 0; } private boolean isEmpty() { return (formeNumber == 0); } private boolean isFull() { return (formeNumber >= formeCollection.length); } public void dessiner(Piletransformations pile) { for (int i = 0; i < formeNumber; i++) { formeCollection[i].dessiner(pile); } } public void deplacer(Point p) { for (int i = 0; i < formeNumber; i++) { formeCollection[i].deplacer(p); } } public boolean ajouter(Forme forme) { boolean rtVal = false; if (!isFull()) { formeCollection[formeNumber] = forme; formeNumber++; rtVal = true; } return rtVal; } public void afficher() { for (int i = 0; i < formeNumber; i++) { formeCollection[i].afficher(); } } }