Puis-je remplacer une méthode privée en Java?

Je sais que je peux utiliser la réflexion pour invoquer une méthode privée, et d'obtenir ou de définir la valeur d'une variable privée, mais je veux remplacer une méthode.

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;
    }
}

Je veux le main méthode dans SubClass à imprimer 2mais il imprime 1.
J'ai entendu parler de ce qui peut être fait par le biais de la réflexion, mais je ne peux pas comprendre comment.
Si pas de réflexion, personne ne sait d'une autre façon de faire?
(Autres que de faire SuperClass.getInt() protégés, ou de copier et coller le printInt() méthode en SubClass.)
Si effectivement la substitution de la méthode privée n'est pas possible, est-il un moyen de placer une sorte de déclencheur qui va appeler une méthode dans mon sous-classe avant ou après la méthode privée exécute?

source d'informationauteur numbers longer