Java 11 嵌套访问
Java 11 引入了一个嵌套类的概念,我们可以在一个类内部声明另一个类。这种类的嵌套允许在一个地方逻辑上组织这些类的使用,使它们更易读和易于维护。嵌套类可以分为四种类型−
静态嵌套类非静态嵌套类
局部类
匿名类
Java 11 还提供了嵌套类的通信和验证的概念。
考虑以下例子 −
ApiTester.java
import java.util.Arrays;import java.util.Set;import java.util.stream.Collectors;public class APITester { public static void main(String[] args) { boolean isNestMate = APITester.class.isNestmateOf(APITester.Inner.class); boolean nestHost = APITester.Inner.class.getNestHost() == APITester.class; System.out.println(isNestMate); System.out.println(nestHost); Set<String> nestedMembers = Arrays.stream(APITester.Inner.class.getNestMembers()) .map(Class::getName) .collect(Collectors.toSet()); System.out.println(nestedMembers); } public class Inner{}}输出
truetrue[APITester$Inner, APITester]
