Por que o tipo resultante de uma divisão de números inteiros curtos em Java não é um número inteiro curto?

Considere este código:

public class ShortDivision {
    public static void main(String[] args) {
        short i = 2;
        short j = 1;
        short k = i/j;
    }
}

Compilar isso produz o erro

ShortDivision.java:5: possible loss of precision
found   : int
required: short
        short k = i/j;

porque o tipo da expressão i / j é aparentemente int e, portanto, deve ser convertido para abreviado.

Por que o tipo dei/j Não é pequeno?

questionAnswers(3)

yourAnswerToTheQuestion