OPM - Overriding a Private Method

A subclass should not contain a method with the same name and signature as in a superclass if these methods are declared to be private.

Wrong

`class Animal {
private void func () {}
}
class Elephant extends Animal {
private void func () {}
}`

Tip: Rename descendand class' method

Right

`class Animal {
private void func () {}
}
class Elephant extends Animal {
private void extFunc () {}
}`