# Interface PrincipalComparator

public interface PrincipalComparator
An object that implements the `java.security.Principal` interface typically also implements this interface to provide a means for comparing that object to a specified `Subject`.

The comparison is achieved via the `implies` method. The implementation of the `implies` method determines whether this object "implies" the specified `Subject`. One example application of this method may be for a "group" object to imply a particular `Subject` if that `Subject` belongs to the group. Another example application of this method would be for "role" object to imply a particular `Subject` if that `Subject` is currently acting in that role.

Although classes that implement this interface typically also implement the `java.security.Principal` interface, it is not required. In other words, classes may implement the `java.security.Principal` interface by itself, the `PrincipalComparator` interface by itself, or both at the same time.

Since:
  1.4
See Also:
  - `Principal`
  - `Subject`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `implies(Subject subject)`
  Check if the specified `Subject` is implied by this object.

- ## Method Details

  - ### implies

    boolean implies(Subject subject)
    Check if the specified `Subject` is implied by this object.
    Parameters:
      `subject` - the subject to compare
    Returns:
      true if the specified `Subject` is implied by this object, or false otherwise.