位置:首页 > Java技术 > Java.util包 > java.util.PropertyPermission.newPermissionCollection()方法实例

java.util.PropertyPermission.newPermissionCollection()方法实例

java.util.PropertyPermission.newPermissionCollection() 方法创建并返回newPermissionCollection对象。

声明

以下是java.util.PropertyPermission.newPermissionCollection()方法的声明

public PermissionCollection newPermissionCollection()

参数

NA

返回值

此方法返回新创建的PermissionCollection对象。

异常

NA

例子

下面的示例演示java.util.PropertyPermission.newPermissionCollection()方法的用法。

package com.yiibai;

import java.security.PermissionCollection;
import java.util.PropertyPermission;

public class PropertyPermissionDemo {
   private static PermissionCollection permissions;
   
   public static void main(String[] args) {
      // Build property permissions collection
      PropertyPermission permission = 
         new PropertyPermission("java.*", "read");
      permissions = permission.newPermissionCollection();
      permissions.add(permission);
      permissions.add(new PropertyPermission("java.home.*", "read,write"));
      
      // Check permissions
      checkFileReadPermission("java.home");
      checkFileWritePermission("java.home");
      checkFileReadPermission("java.home.usr");
      checkFileWritePermission("java.home.usr");
   }

   private static void checkFileReadPermission(String path) {
      // Check permission on read action
      if(permissions.implies(new PropertyPermission(path, "read"))) {
         System.out.println("Has permissions on "+path+" for read");
      }
   }
   
   private static void checkFileWritePermission(String path) {
      // Check permission on read action
      if(permissions.implies(new PropertyPermission(path, "write"))) {
         System.out.println("Has permissions on "+path+" for write");
      }
   }
}

让我们来编译和运行上面的程序,这将产生以下结果:

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