méthode privée dans l'héritage en Java

J'ai la confusion sur l'utilisation de méthodes privées en matière d'héritage, par exemple:

public class A {
    private void say(int number){
        System.out.print("A:"+number);

    }
}

public class B extends A{
    public void say(int number){
        System.out.print("Over:"+number);
    }
}

public class Tester {
    public static void main(String[] args) {

        A a=new B();
        a.say(12);

    }
}

Basées sur les codes ci-dessus, je suis confus au sujet de l'héritage de la méthode privée, est la méthode privée hérité de class A à B? Ou le dire de méthodes dans les deux classes sont totalement étrangers? Comme le code d'erreur lorsqu'il est en cours d'exécution dans la méthode main (), il semble que class B ne peut invoquer la méthode privée de class A.

Vous ne pouvez pas remplacer les méthodes privées.
protégé méthodes sont héritées. les méthodes privées ne sont pas héritées. A ne pas avoir un public say() méthode, par conséquent, ce programme ne devrait pas compiler. Si vous forcer avec ((B)a).say(12) alors il le fera.

OriginalL'auteur pei wang | 2013-10-19