Java PropertyPermission 类



介绍

Java PropertyPermission 类是一个用于属性权限的类。以下是关于 PropertyPermission 的重要几点:

  • 名称是属性的名称("java.home"、"os.name" 等)。

  • 命名约定遵循分层属性命名约定。名称末尾可以出现星号,位于 "." 后面,或者单独出现,表示通配符匹配。例如:"java.*" 或 "*" 是有效的,"*java" 或 "a*b" 是无效的。

类声明

以下是java.util.PropertyPermission类的声明:

public final class PropertyPermission
   extends BasicPermission

类构造函数

序号 构造函数和描述
1

PropertyPermission(String name, String actions)

这将创建一个具有指定名称的新 PropertyPermission 对象。

类方法

序号 方法和描述
1 boolean equals(Object obj)

此方法检查两个 PropertyPermission 对象是否相等。

2 String getActions()

此方法返回操作的“规范字符串表示”。

3 int hashCode()

此方法返回此对象的哈希码值。

4 boolean implies(Permission p)

此方法检查此 PropertyPermission 对象是否“暗示”指定的权限。

5 PermissionCollection newPermissionCollection()

此方法返回一个用于存储 PropertyPermission 对象的新 PermissionCollection 对象。

继承的方法

此类继承自以下类的方法:

  • java.util.Permission
  • java.util.Object

检查 PropertyPermission 对象的读/写操作示例

以下示例演示了 Java PropertyPermission getActions() 方法的使用,用于检查权限对象。我们创建了一个 PropertyPermission 对象,然后检查权限是读取还是写入。

package com.tutorialspoint;

import java.util.PropertyPermission;

public class PropertyPermissionDemo {
   private static PropertyPermission permission;
   
   public static void main(String[] args) {

      // Build property permissions
      permission = new PropertyPermission("java.home.*", "read,write");

      // Check permissions
      checkFilePermissions("java.home.usr");
   }

   private static void checkFilePermissions(String path) {
      
      // Check permission given name
      if(path.matches(permission.getName())) {

         // Get actions list
         String actions = permission.getActions();
         
         // Match read write actions
         if(actions.contains("read"))
         System.out.println("Has permissions on "+path+" for read");
         
         if(actions.contains("write"))
         System.out.println("Has permissions on "+path+" for write");
      }
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

Has permissions on java.home.usr for read
Has permissions on java.home.usr for write
广告