Home »
Java programming language
Java SecurityManager checkDelete() method with example
SecurityManager Class checkDelete() method: Here, we are going to learn about the checkDelete() method of SecurityManager Class with its syntax and example.
Submitted by Preeti Jain, on December 15, 2019
SecurityManager Class checkDelete() method
- checkDelete() method is available in java.lang package.
- checkDelete() method calls checkPermission with FilePermission(filename,"delete").
- checkDelete() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
- checkDelete() method may throw an exception at the time of deleting the file.
- SecurityException – This exception may throw when the calling thread is not allowed to delete the file and it is called for the current security manager by using the delete() method of File class.
NullPointerException – This exception may throw when the given parameter is null.
Syntax:
public void checkDelete(String file_name);
Parameter(s):
- String file_name – represents the system-dependent file name.
Return value:
The return type of this method is void, it returns nothing.
Example:
// Java program to demonstrate the example
// of void checkDelete(String file_name)
// method of SecurityManager
public class CheckDelete {
public static void main(String[] args) {
// By using setProperty() method is to set the policy property
// with security manager
System.setProperty("java.security.policy", "file:/C:/java.policy");
// Instantiating a SecurityManager object
SecurityManager smgr = new SecurityManager();
// By using setSecurityManager() method is to set the
// security manager
System.setSecurityManager(smgr);
// By using checkDelete(String file_name) method is to check
//that file is deleted or not
smgr.checkDelete("getProperties().doc");
// Display the message when file is deleted
System.out.println("File Deleted Successfuly..");
}
}
Output
Exception in thread "main" java.security.AccessControlException: access denied ("java.io.FilePermission" "getProperties().doc" "delete")
at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
at java.base/java.security.AccessController.checkPermission(AccessController.java:897)
at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:322)
at java.base/java.lang.SecurityManager.checkDelete(SecurityManager.java:780)
at CheckDelete.main(CheckDelete.java:20)