No, We can not override private method in Java, just like we can not override static method in Java. Like static methods, private method in Java is also bonded during compile time using static binding by Type information and doesn't depends on what kind of object a particular reference variable is holding. Since method overriding works on dynamic binding, its not possible to override private method in Java. private methods are not even visible to Child class, they are only visible and accessible in the class on which they are declared. private keyword provides highest level of Encapsulation in Java. Though you can hide private method in Java by declaring another private method with same name and different method signature.
Overriding private method in Java - Testing
As per above paragraph we can not override private method in Java because its bonded during compile time using static binding. Now let's test this theory by an example Java program :
This example has two class Parent and Child each contains two method with same name and same signtuare, one of them is private method and other is non private, public in this case. On constructor of Parent class we call both private and non private method and Output shows that overridding only applies in case of non private method. By the way calling overriden method from constructor is considering as bad practice and I have just shown here to demonstrate that we can not override private method in Java.
Other Java OOPS tutorials you may like