| // instantiate abstract |
| public class a { |
| void f() { |
| <error descr="'ii' is abstract; cannot be instantiated">new ii()</error>; |
| |
| <error descr="'c1' is abstract; cannot be instantiated">new c1()</error>; |
| |
| new <error descr="Class 'Anonymous class derived from c1' must either be declared abstract or implement abstract method 'f1(int)' in 'c1'">c1</error>() { |
| public void f2() {} |
| }; |
| |
| new <error descr="Class 'Anonymous class derived from c1' must either be declared abstract or implement abstract method 'f1(int)' in 'c1'">c1</error>() { |
| public void f1() {} |
| }; |
| |
| new <error descr="Class 'Anonymous class derived from c1' must either be declared abstract or implement abstract method 'f2()' in 'Anonymous class derived from c1'">c1</error>() { |
| public void f1(int i) {} |
| public <error descr="Abstract method in non-abstract class">abstract</error> void f2(); |
| }; |
| |
| |
| new c1() { |
| public void f1(int i) {} |
| }; |
| new ii() { public void f1(){} public void f2(){} }; |
| |
| } |
| } |
| abstract class c1 { |
| abstract public void f1(int i); |
| Object o = new c1[0]; |
| } |
| |
| interface ii { |
| abstract void f1(); |
| void f2(); |
| } |
| |