Home »
Java programming language
Java ThreadGroup class checkAccess() method with example
ThreadGroup class checkAccess() method: Here, we are going to learn about the checkAccess() method of ThreadGroup class with its syntax and example.
Submitted by Preeti Jain, on September 13, 2019
ThreadGroup class checkAccess() method
- checkAccess() method is available in java.lang package.
- checkAccess() method is used to check whether the currently running thread has permission to update the thread group or not.
- checkAccess() method is not a static method so it is not accessible with the class name (i.e. this method is accessible with the class object only).
- checkAccess() method is a final method so it is not overridable (i.e. this method is not overridable in child class).
- This method may throw an exception at the time of accessing a thread group.
SecurityException: In this exception when the current thread is not authorized to access the thread group when the security manager exists.
Syntax:
public final void checkAccess();
Parameter(s):
- This method does not accept any parameter.
Return value:
The return type of this method is void, it does not return anything.
Example:
// Java program to demonstrate the example of
// checkAccess () method of ThreadGroup Class.
import java.lang.*;
class CheckAccess extends Thread {
// Override run() of Thread class
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 {
// We are creating an object of ThreadGroup class
ThreadGroup tg1 = new ThreadGroup("ThreadGroup 1");
ThreadGroup tg2 = new ThreadGroup("ThreadGroup 2");
// We are creating an object of Thread class and
// we are assigning the ThreadGroup of both the thread
Thread th1 = new Thread(tg1, ca, "First Thread");
Thread th2 = new Thread(tg2, ca, "Second Thread");
// Calling start() method with Thread class object
// of Thread class
th1.start();
th2.start();
// Here we are checking access of 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());
}
}
}
Output
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