java.lang.reflect.ReflectPermission Class in Java (original) (raw)
Last Updated : 03 Mar, 2021
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
;
`` }
}
Output
Permission not granted