Java ThreadGroup类checkAccess()方法与示例
ThreadGroup类checkAccess()方法
checkAccess()方法在java.lang包中可用。
checkAccess()方法用于检查当前正在运行的线程是否具有更新线程组的权限。
checkAccess()方法不是静态方法,因此无法使用类名进行访问(即,只能使用类对象访问此方法)。
checkAccess()方法是最终方法,因此它是不可重写的(即,该方法在子类中不可重写)。
访问线程组时,此方法可能会引发异常。
SecurityException:在存在安全管理器的情况下,当当前线程无权访问线程组时,发生此异常。
语法:
public final void checkAccess();
参数:
此方法不接受任何参数。
返回值:
此方法的返回类型为void,它不返回任何内容。
示例
//Java程序演示的例子
//ThreadGroup类的checkAccess()方法。
import java.lang.*;
class CheckAccess extends Thread {
//覆盖run()Thread类
public void run() {
String name = Thread.currentThread().getName();
System.out.println(name + " " + "finish executing");
}
}
public class Main {
public static void main(String[] args) {
CheckAccess ca = new CheckAccess();
try {
//我们正在创建ThreadGroup类的对象
ThreadGroup tg1 = new ThreadGroup("ThreadGroup 1");
ThreadGroup tg2 = new ThreadGroup("ThreadGroup 2");
//我们正在创建Thread类的对象,然后
//我们正在分配两个线程的ThreadGroup-
Thread th1 = new Thread(tg1, ca, "First Thread");
Thread th2 = new Thread(tg2, ca, "Second Thread");
//start()使用Thread类对象的调用方法
//线程类
th1.start();
th2.start();
//在这里,我们正在检查ThreadGroup的访问权限
try {
tg1.checkAccess();
System.out.println(tg1.getName() + " " + "has access");
tg2.checkAccess();
System.out.println(tg2.getName() + " " + "has access");
} catch (SecurityException se) {
System.out.println(se.getMessage());
}
th1.join();
th2.join();
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}输出结果
E:\Programs>javac Main.java E:\Programs>java Main ThreadGroup 1 has access ThreadGroup 2 has access First Thread finish executing Second Thread finish executing
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短