/* * Package "puzzleboard" * * Supponiamo che il modulo Test.java utilizzi il package puzzleboard. * Il programma Test.java deve importare le classi definite dal package * (specificamente, PuzzleBoard). * * Se i file Test.java e puzzleboard.jar sono collocati nella stessa * cartella (directory), il programma deve premettere l'istruzione: * * import puzzleboard.*; * * Quindi, e' possibile compilare ed eseguire il programma Test * con le seguenti linee di comando: * * javac -classpath "puzzleboard.jar:." Test.java * java -classpath "puzzleboard.jar:." Test * * Il protocollo della classe PuzzleBoard prevede un costruttore * per costruire una "tavoletta" n x n: * * PuzzleBoard board = new PuzzleBoard(n); * * e i seguenti metodi: * * board.setNumber(i,j, k); * * per definire o modificare il valore della pedina di coordinate * , dove i, j appartengono all'intervallo di indici [1,n]; * * board.swap(i1,j1, i2,j2); * * per scambiare le pedine di coordinate e , * dove i1, j1, i2, j2 nell'intervallo [1,n]; * * board.display(); * * per aggiornare la visualizzazione della tavoletta; * * int k = board.get(); * * per acquisire il valore numerico della pedina selezionata * dall'utente attraverso il mouse (il programma che invoca * il metodo attiva il processo di selezione e viene sospeso * fino a selezione avvenuta attraverso l'operazione "click"). */