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
import 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 ;
}
}
|
OutputPermission not granted