[ Web Proxy ]
URL:
Viewing: https://www.tutorialspoint.com/java/java11_nested_based_access.htm [Back]  [Original]

Java 11 - Nest Based Access Control
Tutorials Courses Jobs Login
Selected Reading
Home Java Java 11 - Nest Based Access Control

Java 11 - Nest Based Access Control



Java 11 introduced a concept of nested class where we can declare a class within a class. This nesting of classes allows to logically group the classes to be used in one place, making them more readable and maintainable. Nested class can be of four types

  • Static nested classes

  • Non-static nested classes

  • Local classes

  • Anonymous classes

Java 11 also provide the concept of nestmate to allow communication and verification of nested classes.

Consider the following example

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{}
}

Output

true
true
[APITester$Inner, APITester]
Tutorix - AI Tutor [Tutorix - AI Tutor]
Print Page
Advertisements

Web Proxy Viewer  |  New URL  |  Original Page