Module java.base
Package java.security

## Interface Guard

- All Known Implementing Classes:
    `AllPermission`, `AttachPermission`, `AudioPermission`, `AuthPermission`, `AWTPermission`, `BasicPermission`, `CardPermission`, `DelegationPermission`, `FilePermission`, `InquireSecContextPermission`, `JAXBPermission`, `JDIPermission`, `LinkPermission`, `LoggingPermission`, `ManagementPermission`, `MBeanPermission`, `MBeanServerPermission`, `MBeanTrustPermission`, `NetPermission`, `NetworkPermission`, `Permission`, `PrivateCredentialPermission`, `PropertyPermission`, `ReflectPermission`, `RuntimePermission`, `SecurityPermission`, `SerializablePermission`, `ServicePermission`, `SocketPermission`, `SQLPermission`, `SSLPermission`, `SubjectDelegationPermission`, `UnresolvedPermission`, `URLPermission`, `WebServicePermission`

      public interface Guard

  This interface represents a guard, which is an object that is used to protect access to another object.

  This interface contains a single method, `checkGuard`, with a single `object` argument. `checkGuard` is invoked (by the GuardedObject `getObject` method) to determine whether or not to allow access to the object.

  Since:
    1.2
  See Also:
    `GuardedObject`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `checkGuard​(Object object)` | Determines whether or not to allow access to the guarded object `object`.

- - ### Method Detail

    - #### checkGuard

          void checkGuard​(Object object)
                   throws SecurityException

      Determines whether or not to allow access to the guarded object `object`. Returns silently if access is allowed. Otherwise, throws a SecurityException.
      Parameters:
        `object` - the object being protected by the guard.
      Throws:
        `SecurityException` - if access is denied.