You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

InvalidNewQualifier7CE.java 1.1KB

123456789101112131415161718192021222324252627282930313233343536
  1. /** @testcase PUREJAVA nested interface does not require new qualifier */
  2. public class InvalidNewQualifier7CE {
  3. interface I {}
  4. void test() {
  5. // error
  6. this.new I(){}; // CE 7 new qualification unneeded
  7. // new Outer().new Outer.I(){}; // CE 8 new qualification bad
  8. // new OuterInterface(){}.new OuterInterface.I(){}; // CE 9 new qualification bad
  9. // new OuterOuter.Inner(){}.new OuterOuter.Inner.I(){}; // CE 10 new qualification bad
  10. Outer o = new Outer();
  11. OuterInterface oi = new OuterInterface(){};
  12. OuterOuter.Inner ooi = new OuterOuter.Inner(){};
  13. // o.new Outer.I(){}; // CE 14 new qualification bad
  14. // oi.new OuterInterface.I(){}; // CE 15 new qualification bad
  15. // ooi.new OuterOuter.Inner.I(){}; // CE 16 new qualification bad
  16. // ok
  17. new I(){};
  18. new Outer.I(){};
  19. new OuterInterface.I(){};
  20. new OuterOuter.Inner.I(){};
  21. }
  22. }
  23. class Outer {
  24. interface I {}
  25. }
  26. interface OuterInterface {
  27. interface I {}
  28. }
  29. class OuterOuter {
  30. interface Inner {
  31. interface I {}
  32. }
  33. }