13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 24 package P1; 25 26 /* 27 * This is used to produce a jcod file in which we modify the 28 * NestMembers attribute to claim that P2.PackagedNestHost.Member 29 * is a member of our nest. 30 */ 31 public class PackagedNestHost { 32 public static class Member { 33 // jcod file will change this to private 34 public static void m() { 35 System.out.println("You should never see this!"); 36 } 37 } 38 39 // Entry point for main test 40 public static void doAccess() { 41 // this should fail at runtime as m() will now be private 42 // and the nestmate access check should fail due to being in 43 // a different package. 44 P2.PackagedNestHost2.Member.m(); 45 } 46 } | 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 24 package P1; 25 26 /* 27 * This is used to produce a jcod file in which we modify the 28 * NestMembers attribute to claim that P2.PackagedNestHost.Member 29 * is a member of our nest. 30 */ 31 public class PackagedNestHost { 32 public static class Member { 33 // jcod file will change these to private 34 public Member() {} 35 public static int f; 36 public static void m() { 37 System.out.println("You should never see this!"); 38 } 39 } 40 41 // Entry points for main test. 42 // These should fail at runtime as members will now be private 43 // and the nestmate access check should fail due to being in a 44 // different package. 45 46 public static void doInvoke() { 47 P2.PackagedNestHost2.Member.m(); 48 } 49 50 public static void doConstruct() { 51 Object o = new P2.PackagedNestHost2.Member(); 52 } 53 54 public static void doGetField() { 55 int x = P2.PackagedNestHost2.Member.f; 56 } 57 58 public static void doPutField() { 59 P2.PackagedNestHost2.Member.f = 42; 60 } 61 } |