public final class Permissions extends PermissionCollection implements Serializable
java.io.FilePermission
对象添加到此类的实例,则它们都存储在单个PermissionCollection中。
它是通过调用FilePermission类中的newPermissionCollection
方法返回的PermissionCollection。
类似地,任何java.lang.RuntimePermission
对象都存储在对RuntimePermission类中对newPermissionCollection
方法的调用返回的PermissionCollection中。
因此,此类表示PermissionCollections的集合。
当调用add
方法添加权限时,权限将存储在适当的PermissionCollection中。 如果尚未存在此类集合,则会确定Permission对象的类,并在newPermissionCollection
上调用newPermissionCollection
方法来创建PermissionCollection并将其添加到Permissions对象。 如果newPermissionCollection
返回null,则将创建并使用使用散列表的默认PermissionCollection。 每个散列表条目都将Permission对象存储为键和值。
通过elements
方法返回的elements
不是故障快速的 。 在枚举集合时不应执行对集合的修改。
Permission
, PermissionCollection
, AllPermission
Constructor and Description |
---|
Permissions()
创建一个不包含PermissionCollections的新Permissions对象。
|
Modifier and Type | Method and Description |
---|---|
void |
add(Permission permission)
将权限对象添加到权限所属的类的PermissionCollection。
|
Enumeration<Permission> |
elements()
返回此Permissions对象中所有PermissionCollections中所有Permission对象的枚举。
|
boolean |
implies(Permission permission)
检查此对象的PermissionCollection是否具有指定权限类的权限,这意味着在权限对象中
表达的权限。
|
isReadOnly, setReadOnly, toString
public void add(Permission permission)
add
在
PermissionCollection
permission
- 要添加的权限对象。
SecurityException
- 如果此Permissions对象被标记为只读。
PermissionCollection.isReadOnly()
public boolean implies(Permission permission)
例如,假设此Permissions对象中有一个FilePermissionCollection,并且它包含一个FilePermission,它为“/ tmp”目录的所有子目录中的所有文件指定了“读取”访问权限,另一个为所有文件指定“写入”访问权限的FilePermission在“/ tmp / scratch / foo”目录中。 然后,如果调用implies
方法,同时指定对“/ tmp / scratch / foo”目录中的文件进行“读取”和“写入”访问权限,则返回true
。
此外,如果此PermissionCollection包含AllPermission,此方法将始终返回true。
implies
在
PermissionCollection
permission
- 要检查的权限对象。
public Enumeration<Permission> elements()
elements
在
PermissionCollection