java.security

接口
异常
java.lang.Object
  继承者 java.security.Permission
      继承者 java.security.BasicPermission
所有已实现的接口:
Serializable, Guard
直接已知子类:
AudioPermission, AuthPermission, AWTPermission, DelegationPermission, LoggingPermission, ManagementPermission, MBeanServerPermission, MBeanTrustPermission, NetPermission, PropertyPermission, ReflectPermission, RuntimePermission, SecurityPermission, SerializablePermission, SQLPermission, SSLPermission, SubjectDelegationPermission, WebServicePermission

public abstract class BasicPermission
     
extends Permission
implements Serializable

BasicPermission 类扩展 Permission 类,并且可以用作希望与 BasicPermission 遵守相同命名约定的权限的基类。

BasicPermission 的名称就是给定权限的名称(例如,"exit"、"setFactory"、"print.queueJob" 等)。命名约定遵守层次结构属性命名约定。星号可能单独出现,也可能紧跟在 "." 后面出现在名称的末尾,它表示通配符匹配。例如,"*" 和 "java.*" 有效,而 "*java"、"a*b" 和 "java*" 无效。

不使用(从 Permission 继承的)操作字符串。因此,BasicPermission 通常用作“指定”权限(包含名称但不包含操作列表的权限;或者具有指定权限或者不具有)的基类。需要时子类可以在 BasicPermission 之上实现操作。

另请参见:
Permission, Permissions, PermissionCollection, RuntimePermission, SecurityPermission, PropertyPermission, AWTPermission, NetPermission, SecurityManager, 序列化表格

构造方法摘要
BasicPermission(String name)
          创建具有指定名称的新 BasicPermission。
BasicPermission(String name, String actions)
          创建具有指定名称的新 BasicPermission 对象。
 
方法摘要
 boolean equals(Object obj)
          检查两个 BasicPermission 对象是否相等。
 String getActions()
          返回操作的规范化字符串表示形式,该表示形式当前为空字符串 "",因为不存在 BasicPermission 的操作。
 int hashCode()
          返回此对象的哈希码值。
 boolean implies(Permission p)
          检查此对象是否“暗含”指定的权限。
 PermissionCollection newPermissionCollection()
          用于存储 BasicPermission 对象的新 PermissionCollection 对象。
 
从类 java.security.Permission 继承的方法
checkGuard, getName, toString
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

BasicPermission

public BasicPermission(String name)
创建具有指定名称的新 BasicPermission。name 是权限的符号名,如 "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 为空。
方法详细信息

implies

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

更明确地说,如果此方法满足以下条件,则返回 true:

  • p 的类与此对象的类相同,并且

  • p 的名称等于此对象的名称或者(在使用通配符的情况下)此对象的名称暗含它的名称。例如,"a.b.*" 暗含 "a.b.c"。

指定者:
Permission 中的 implies
参数:
p - 所要检查的权限。
返回:
如果传递的权限等于此权限或者暗含于此权限,则返回 true;否则返回 false。

equals

public boolean equals(Object obj)
检查两个 BasicPermission 对象是否相等。检查 obj 的类是否与此对象的类相同并且具有与此对象相同的名称。

指定者:
Permission 中的 equals
参数:
obj - 要与此对象进行相等性测试的对象。
返回:
如果 obj 为 BasicPermission 并且具有与此 BasicPermission 对象相同的名称,则返回 true;否则返回 false。
另请参见:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回此对象的哈希码值。所用的哈希码是名称的哈希码,也就是 getName().hashCode(),其中 getName 来自 Permission 超类。

指定者:
Permission 中的 hashCode
返回:
此对象的哈希码值。
另请参见:
Object.equals(java.lang.Object), Hashtable

getActions

public String getActions()
返回操作的规范化字符串表示形式,该表示形式当前为空字符串 "",因为不存在 BasicPermission 的操作。

指定者:
Permission 中的 getActions
返回:
空字符串 ""。

newPermissionCollection

public PermissionCollection newPermissionCollection()
用于存储 BasicPermission 对象的新 PermissionCollection 对象。

BasicPermissionCollection 存储 BasicPermission 权限的集合。

BasicPermission 对象必须以允许将它们按任意顺序插入的方式来存储,但同时也允许以有效(并一致)的方式实现 PermissionCollection 的 implies 方法。

覆盖:
Permission 中的 newPermissionCollection
返回:
适合存储 BasicPermissions 的新 PermissionCollection 对象。