Guard (Java SE 25 & JDK 25)
Description: declaration: module: java.base, package: java.security, interface: Guard
Keywords: java.security.Guard interface

# Interface Guard

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

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 to allow access to the object.

Since:
  1.2
See Also:
  - `GuardedObject`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `checkGuard(Object object)`
  Determines whether to allow access to the guarded object `object`.

- ## Method Details

  - ### checkGuard

    void checkGuard(Object object) throws SecurityException
    Determines whether 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.