Seguendo quello che mi hai suggerito ho scritto questo:

codice:
class MetodoQuadratoPerfetto{
	public static boolean quadrato(int n){
		double reale;
		int intero;
		boolean quadrato;
		reale=0;
		reale=Math.sqrt(reale);
		intero=(int)reale;

		intero=intero*intero;

		quadrato=intero==reale;

		return quadrato;
	}
}
Se inserisco il valore 16 il risultato è true, ma anche se inserisco il valore 17!!!
Dove ho sbagliato?