@@ -35,9 +35,9 @@ public String getString() {
3535 return "Test_Inner" ;
3636 }
3737
38- class Test_Abstract_a extends Test_ {
38+ public class Test_Abstract_a extends Test_ {
3939
40- void testing () {
40+ public void testing () {
4141 System .out .println ("this is " + a );
4242 assert (a == "a string" );
4343 System .out .println (showt2 ());
@@ -73,17 +73,38 @@ public String showt2() {
7373 }
7474
7575
76+ public void testDollar (Test_Abstract_a abs ) {
77+
78+ }
79+
7680 public static void main (String [] args ) {
7781 Test_Inner inner = new Test_Inner (6 ) {};
82+ try {
83+ System .out .println (inner .getClass ().getMethod ("testDollar" , new Class <?>[] {Test_Abstract_a .class }).getName ());
84+ } catch (NoSuchMethodException | SecurityException e ) {
85+ // TODO Auto-generated catch block
86+ e .printStackTrace ();
87+ }
7888 inner .showt2 ();
7989 new Test_Inner (3 ) {}.showt2 ();
8090 System .out .println (inner .t_test );
8191 System .out .println ("new Test_Inner(){}.t_test=" + new Test_Inner (7 ) {}.t_test );
8292 Test_Abstract_a abs = inner .new Test_Abstract_a ();
83- System .out .println (new Test_Abstract_a [] {abs }.getClass ().getName ());
84- abs .testing ();
93+ String s = abs .getClass ().getName ();
94+ String s1 = new Test_Abstract_a [] {abs }.getClass ().getName ();
95+ System .out .print ("checking inner$" );
96+ assert (s .equals ("test.Test_Inner$Test_Abstract_a" ));
97+ assert (s1 .equals ("[Ltest.Test_Inner$Test_Abstract_a;" ));
98+ System .out .println (" ok" );
8599 new Test_Inner (8 ) {}.new Test_Abstract_a ().testing ();
86100
101+ try {
102+ System .out .println (abs .getClass ().getMethod ("testing" , new Class <?>[] {}).getName ());
103+ } catch (NoSuchMethodException | SecurityException e ) {
104+ // TODO Auto-generated catch block
105+ e .printStackTrace ();
106+ }
107+
87108
88109 System .out .println ("Test_Inner OK" );
89110 }
0 commit comments