Files
javademos/java11-features/src/NestMates.java
T

14 lines
714 B
Java

import java.lang.reflect.Modifier;
/** JEP 181: nest-based access. Private members of nest mates no longer need synthetic accessor methods. */
public class NestMates {
private int secret = 42;
static class Inner { int peek(NestMates n) { return n.secret; } }
public static void main(String[] args) {
System.out.println("nest host : " + Inner.class.getNestHost().getSimpleName());
System.out.println("inner can read : " + new Inner().peek(new NestMates()));
long synthetic = java.util.Arrays.stream(NestMates.class.getDeclaredMethods()).filter(m -> m.getName().startsWith("access$")).count();
System.out.println("access$ methods on outer: " + synthetic);
}
}