文档

Java™ 教程
隐藏目录
高分数权限类
路径: Java SE 中的安全特性
课程: 实现自己的权限

HighScorePermission 类

HighScorePermission 类定义了 ExampleGame 需要更新用户高分的权限。

所有权限类都应该从 java.security.Permissionjava.security.BasicPermission 中的一个子类进行继承。两者之间的基本区别在于 java.security.Permission 定义了更复杂的权限,需要名称和操作。例如,java.io.FilePermission 扩展自 java.security.Permission,需要一个名称(文件名)和允许对该文件执行的操作(读取/写入/删除)。

相比之下,java.security.BasicPermission 定义了更简单的权限,只需要一个名称。例如,java.lang.RuntimePermission 扩展自 java.security.BasicPermission,只需要一个名称(如 "exitVM"),允许程序退出 Java 虚拟机。

我们的 HighScorePermission 是一个简单的权限,因此可以从 java.security.BasicPermission 中进行扩展。

通常情况下,BasicPermission 类本身的方法实现不需要被其子类重写。这对于我们的 HighScorePermission 来说也是如此,所以我们只需要实现构造函数,它只是调用超类的构造函数,如下所示:

package com.scoredev.scores;

import java.security.*;

public final class HighScorePermission extends BasicPermission {

    public HighScorePermission(String name)
    {
	super(name);
    }

    // 注意,actions 被忽略并且未使用,
    // 但这个构造函数仍然是必需的
    public HighScorePermission(String name, String actions) 
    {
	super(name, actions);
    }
}

上一页: HighScore类
下一页: 示例策略文件