public class Test { 
	public static void main(String[] args) { 
		UpperLevelClass.InnerClass c = new UpperLevelClass.InnerClass(); 
		c.methodNameOne("a", new Integer(2)); 
	} 
} 

class UpperLevelClass { 

	private static void methodNameTwo(String a, String b) { 
		System.out.println("UpperLevelClass.methodNameTwo"); 
	} 

	private static void methodNameOne(String a, String b) { 
		System.out.println("UpperLevelClass.methodNameOne"); 
	} 

	static class InnerClass extends UpperLevelClass { 
		void methodNameOne(String a, Integer b) { 
			System.out.println("InnerClass.methodNameOne"); 
			methodNameTwo("", ""); 
			methodNameOne("", "");//error 
		} 
	} 
} 