java.lang.Object java.security.PermissionCollection java.security.Permissions
public final class Permissions
此类表示一个不同种类的 Permission 集合。也就是说,它包含组编到 PermissionCollection 中的不同类型的 Permission 对象。例如,如果将任何 java.io.FilePermission
对象添加到此类的实例中,它们都将被存储在单个 PermissionCollection 中。调用 FilePermission 类的 newPermissionCollection
方法返回的是 PermissionCollection。类似的,任何 java.lang.RuntimePermission
对象都存储在调用 RuntimePermission 类的 newPermissionCollection
方法所返回的 PermissionCollection 中。因此,此类表示 PermissionCollection 的集合。
当调用 add
方法添加 Permission 时,Permission 将被存储在合适的 PermissionCollection 中。如果还没有这样的集合存在,则确定 Permission 对象的类并对该类调用 newPermissionCollection
方法来创建 PermissionCollection,然后将其添加到 Permissions 对象中。如果 newPermissionCollection
返回 null,那么将创建和使用一个默认使用 hashtable 的 PermissionCollection。每个 hashtable 项存储了一个 Permission 对象作为键和值。
通过 elements
方法返回的枚举不是快速失败 的。正在对一个集合进行枚举时,不应该修改该集合。
构造方法摘要 | |
---|---|
Permissions() 创建一个不包含任何 PermissionCollection 的新 Permissions 对象。 |
方法摘要 | |
---|---|
void |
add(Permission permission) 将一个 permission 对象添加到该权限所属的类的 PermissionCollection 中。 |
Enumeration<Permission> |
elements() 返回此 Permissions 对象中所有 PermissionCollection 中的所有 Permission 对象的枚举。 |
boolean |
implies(Permission permission) 查看此对象用于指定 permission 类的 permissions 的 PermissionCollection 是否暗含了 permission 对象中表示的权限。 |
从类 java.security.PermissionCollection 继承的方法 |
---|
isReadOnly, setReadOnly, toString |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public Permissions()
方法详细信息 |
---|
public void add(Permission permission)
PermissionCollection
中的
add
permission
- 要添加的 Permission 对象。
SecurityException
- 如果此 Permissions 对象被标记为只读。
PermissionCollection.isReadOnly()
public boolean implies(Permission permission)
例如,假定在此 Permissions 对象中有一个 FilePermissionCollection,它包含一个指定对 "/tmp" 目录所有子目录下的所有文件进行 "read" 访问的 FilePermission,以及另一个指定对 "/tmp/scratch/foo" 目录下所有文件进行 "write" 访问的 FilePermission。那么如果使用指定对 "/tmp/scratch/foo" 目录下的文件进行 "read" 和 "write" 访问权限的 permission 作为参数调用 implies
方法,则返回 true
。
此外,如果此 PermissionCollection 包含 AllPermission,此方法将总是返回 true。
PermissionCollection
中的
implies
permission
- 要检查的 Permission 对象。
public Enumeration<Permission> elements()
PermissionCollection
中的
elements