【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)
https://blog.csdn.net/m0_69908381/article/details/132594530
出自【进步*于辰的博客】
因为我发现目前,我对Java-API的学习意识比较薄弱,需要慢慢习惯使用Java-API,乃至剖析源码来提升自己的源码阅读能力和编码素质。
大家如果需要Java-API文档,我上传了【https://download.csdn.net/download/m0_69908381/87691693】。
文章目录
- 1、概述
- 2、构造方法摘要
- 2.1 String path, String actions
- 3、方法摘要
- 3.1 boolean equals(Object obj)
- 3.2 String getActions()
- 3.3 int hashCode()
- 3.4 boolean implies(Permission p)
- 3.5 PermissionCollection newPermissionCollection()
1、概述
继承关系:
- java.lang.Object
- java.security.Permission
- java.io.FilePermission
- java.security.Permission
所有已实现的接口:
Serializable、Guard
public final class FilePermission extends Permission implements Serializable
此类表示对文件和目录的访问。FilePermission 由文件名 和对该路径名有效的操作集合 组成。
路径名是授予指定操作的文件或目录的路径名。以 “/*
”(其中 “/
” 是文件分隔符字符,即 File.separatorChar
)结尾的路径名指示包含在该目录中的所有文件 和目录。以 “/-
” 结尾的路径名(递归地)指示包含在该目录中的所有文件 和子目录。由特殊标记 “<<ALL FILES>>
” 组成的路径名可匹配任何文件。
注:由单个 “*
” 组成的路径名指示当前目录中的所有文件,而由单个 “-
” 组成的路径名指示当前目录中的所有文件,并(递归地)指示包含在当前目录中的所有文件 和子目录。
将所要授予的操作以字符串的形式传递给构造方法,该字符串包含由一个或多个用逗号分隔的关键字组成的列表。可能的关键字有 “read
”、“write
”、“execute
” 和 “delete
”。其含义定义如下:
- read
- 读权限 write
- 写权限 execute
- 执行权限。允许调用
Runtime.exec()
。对应于SecurityManager.checkExec()
。 delete - 删除权限。允许调用
File.delete()
。对应于SecurityManager.checkDelete()
。
处理前会将操作字符串转换为小写字母。
在授予 FilePermission 权限时要小心。在对各种文件和目录授予读访问权和(尤其是)写访问权时,一定要慎重。对写操作授予 “<<ALL FILES>>
” 权限特别危险。这允许对整个文件系统进行写操作。事实上它甚至允许对系统中的二进制文件(包括 JVM 运行时环境)进行替换。
请注意:代码总是可以读取自身所在目录(或该目录的子目录)中的文件,不需要对其进行显式授权。
从以下版本开始:
1.2
另请参见:
Permission、Permissions、PermissionCollection
2、构造方法摘要
2.1 String path, String actions
创建具有指定操作的新 FilePermission 对象,path
是文件或目录的路径名,actions
包含对文件或目录授予的所需操作的列表,该列表由逗号分隔。
3、方法摘要
3.1 boolean equals(Object obj)
检查两个 FilePermission 对象是否相等。
3.2 String getActions()
返回操作的“规范化字符串表示形式”。
3.3 int hashCode()
返回此对象的哈希码值。
3.4 boolean implies(Permission p)
检查 FilePermission 对象是否“隐含”指定的权限。
3.5 PermissionCollection newPermissionCollection()
返回用于存储 FilePermission 对象的新 PermissionCollection 对象。
本文暂缓更新。