Posso substituir um método privado em Java?

Eu sei que posso usar a reflexão para invocar um método privado e obter ou definir o valor de uma variável privada, mas quero substituir um método.

public class SuperClass {

    public void printInt() {
        System.out.println("I am " + getClass() + ". The int is " + getInt());
    }

    private int getInt() {
        return 1;
    }
}

public class SubClass extends SuperClass {

    public static void main(String[] args) {
        (new SubClass()).printInt();
    }

    public int getInt() {
        return 2;
    }
}

eu quero omain método emSubClass para imprimir2, mas imprime1. Eu ouvi que isso pode ser feito através da reflexão, mas não consigo descobrir como. Se não reflexão, alguém sabe de outra maneira de fazer isso? (Além de fazerSuperClass.getInt() protegido, ou copiando e colandoprintInt() método emSubClassSe realmente sobrescrevendo o método privado não é possível, existe uma maneira de colocar algum tipo de gatilho nele que invocará um método na minha subclasse antes ou depois que o método privado for executado?

questionAnswers(10)

yourAnswerToTheQuestion