Вот краткий, тщательно подобранный ответ.
public class Narrow {
public static void main(String[] args) {
int i;
short s;
i = 32768;
s = (short) i;
System.out.println("int of " + i + " becomes a short of " + s);
}
}
я равен 2 ^ 15, или один больше, чем MAX_VALUE короткого.
Java ответит int of 32768 becomes a short of -32768