Actually, we have the access to static method which is declared as Public in Outer class from class
Test. In this case it won't allow you to hide it from sub class. see the following code it will compiles fine.
class Outer
{
public static int i = 5;
// public static void doStuff()
// { }
private static void doStuff() { }
}
public class Test extends Outer
{
private static int i = 6; //ok
//private static void doStuff() {} //nope
public static void doStuff() {}// this is ok
}