ReflectPermission class extends BasicPermission class. It is a “named” permission i.e it contains a name but no action. It may implement actions on top of BasicPermission, if desired. It is used to get information about the behaviour of Constructors.
| Constructors | Description |
|---|---|
| ReflectPermission(String name) | It is used to create a ReflectPermission with the specified name. |
| ReflectPermission(String name, String action) | It is used to create a ReflectPermission with the specified name and action. |
Methods inherited from class java.security.BasicPermission:
| Methods | Description |
|---|---|
| equals(Object obj) | It checks whether the two BasicPermission objects are equal or not. |
| getActions() | It returns the actions in String format, which is currently an empty string as there is no action for ReflectPermission. |
| hashCode() | It returns the hash code value for this object. |
| implies(Permission permission) | It checks whether the given permission is implied by this object or not. |
| newPermissionCollection() | It returns a new PermissionCollection object. |
Below is the example/use of a given class:
Java
// Use of java.lang.reflect.ReflectPermission Class in Javaimport java.lang.reflect.ReflectPermission;class GFG { public static void main(String[] args) { if (canAccessPrivateMethods()) { System.out.println("Permission granted"); } else { System.out.println("Permission not granted"); } } static boolean canAccessPrivateMethods() { try { SecurityManager securityManager = System.getSecurityManager(); if (null != securityManager) { securityManager.checkPermission( new ReflectPermission( "suppressAccessChecks")); } } catch (SecurityException e) { return false; } return true; }} |
Permission not granted
