public class VisibilityBridgeTest { public void testFinalMethod() throws Exception { Foo.class.getMethod("foo").invoke(new Foo()); // fails } public void testNonFinalMethod() throws Exception { Foo.class.getMethod("bar").invoke(new Foo()); // works } }