|
Java example source code file (QualifiedAccess_3.java)
The QualifiedAccess_3.java Java example source code/** * @test /nodynamiccopyright/ * @bug 4094658 4785453 * @summary Test enforcement of JLS 6.6.1 and 6.6.2 rules requiring that * the type to which a component member belongs be accessible in qualified * names. * * @compile/fail/ref=QualifiedAccess_3.out -XDrawDiagnostics QualifiedAccess_3.java */ import pack1.P1; class CMain { class Foo { class Bar {} } static class Baz { private static class Quux { static class Quem {} } } // These are all OK. CMain z = new CMain(); Foo x = z.new Foo(); Foo.Bar y = x.new Bar(); void test() { P1 p1 = new P1(); // These are NOT errors, and should NOT be detected, as observed. /*------------------------------------* Baz.Quux z = null; Baz.Quux.Quem y = null; *------------------------------------*/ P1.Foo.Bar x = null; // ERROR - 'P1.Foo' not accessible int i = p1.a.length; // ERROR - Type of 'a' not accessible // The type of the expression from which a component // is selected must be accessible. p1.p2.privatei = 3; // ERROR - Type of 'p1.p2' not accessible. System.out.println (p1.p2.privatei); // ERROR - Type of 'p1.p2' not accessible. } } Other Java examples (source code examples)Here is a short list of links related to this Java QualifiedAccess_3.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.