Module java.base
Package java.security

Class BasicPermission

java.lang.Object
java.security.Permission
java.security.BasicPermission
所有已实现的接口:
Serializable, Guard
直接已知的子类:
AttachPermission, AudioPermission, AuthPermission, AWTPermission, DelegationPermission, FlightRecorderPermission, InquireSecContextPermission, JDIPermission, LinkPermission, LoggingPermission, ManagementPermission, MBeanServerPermission, MBeanTrustPermission, NetPermission, NetworkPermission, PropertyPermission, ReflectPermission, RuntimePermission, SecurityPermission, SerializablePermission, SQLPermission, SSLPermission, SubjectDelegationPermission

public abstract class BasicPermission extends Permission implements Serializable
BasicPermission类扩展了Permission类,可用作希望遵循与BasicPermission相同命名约定的权限的基类。

BasicPermission的名称是给定权限的名称(例如,"exit","setFactory","print.queueJob"等)。命名约定遵循分层属性命名约定。星号可以单独出现,或者如果紧随一个".",则可以出现在名称的末尾,表示通配符匹配。例如,"*"和"java.*"表示通配符匹配,而"*java","a*b"和"java*"则不是。

动作字符串(从Permission继承)未使用。因此,BasicPermission通常用作“命名”权限的基类(其中包含名称但不包含动作列表;您要么具有命名权限,要么没有)。子类可以根据需要在BasicPermission之上实现动作。

自 JDK 版本:
1.2
参见:
  • Constructor Details

    • BasicPermission

      public BasicPermission(String name)
      创建具有指定名称的新BasicPermission。名称是权限的符号名称,例如"setFactory","print.queueJob"或"topLevelWindow"等。
      参数:
      name - BasicPermission的名称。
      抛出:
      NullPointerException - 如果namenull
      IllegalArgumentException - 如果name为空。
    • BasicPermission

      public BasicPermission(String name, String actions)
      创建具有指定名称的新BasicPermission对象。名称是BasicPermission的符号名称,动作String目前未使用。
      参数:
      name - BasicPermission的名称。
      actions - 被忽略。
      抛出:
      NullPointerException - 如果namenull
      IllegalArgumentException - 如果name为空。
  • Method Details

    • implies

      public boolean implies(Permission p)
      检查指定的权限是否被此对象“隐含”。

      更具体地说,如果满足以下条件,此方法将返回true

      • p的类与此对象的类相同,并且
      • p的名称等于或(在通配符情况下)被此对象的名称隐含。例如,"a.b.*"隐含"a.b.c"。
      由:
      implies 在类中 Permission
      参数:
      p - 要检查的权限。
      返回:
      如果传递的权限等于或被此权限隐含,则返回true,否则返回false
    • equals

      public boolean equals(Object obj)
      检查两个BasicPermission对象是否相等。检查obj的类是否与此对象的类相同,并且名称与此对象相同。
      由:
      equals 在类中 Permission
      参数:
      obj - 我们正在测试与此对象相等的对象。
      返回:
      如果obj的类与此对象的类相同,并且名称与此BasicPermission对象相同,则返回true,否则返回false
      参见:
    • hashCode

      public int hashCode()
      返回此对象的哈希码值。使用的哈希码是名称的哈希码,即getName().hashCode(),其中getName来自Permission超类。
      由:
      hashCode 在类中 Permission
      返回:
      此对象的哈希码值。
      参见:
    • getActions

      public String getActions()
      返回动作的规范字符串表示形式,目前为空字符串"",因为BasicPermission没有动作。
      由:
      getActions 在类中 Permission
      返回:
      空字符串""。
    • newPermissionCollection

      public PermissionCollection newPermissionCollection()
      返回一个新的PermissionCollection对象,用于存储BasicPermission对象。

      BasicPermission对象必须以一种允许它们以任何顺序插入的方式存储,但也使得PermissionCollection.implies(java.security.Permission)方法能够以有效(和一致)的方式实现。

      覆盖:
      newPermissionCollection 在类中 Permission
      返回:
      适用于存储BasicPermission对象的新PermissionCollection对象。