El método getProtectionDomain() de la clase java.lang.Class se utiliza para obtener el ProtectionDomain de esta clase. El método devuelve el ProtectionDomain especificado de esta clase en forma de objeto ProtectionDomain.
Sintaxis:
public ProtectionDomain getProtectionDomain()
Parámetro: Este método no acepta ningún parámetro
Valor devuelto: este método devuelve el ProtectionDomain especificado de esta clase en forma de objetos ProtectionDomain.
Excepción Este método arroja:
- SecurityException si existe un administrador de seguridad y su método checkPermission no permite obtener el ProtectionDomain.
Los siguientes programas demuestran el método getProtectionDomain().
Ejemplo 1:
// Java program to demonstrate // getProtectionDomain() method import java.util.*; public class Test { public Object obj; public static void main(String[] args) throws ClassNotFoundException { try { // returns the Class object for this class Class myClass = Class.forName("Test"); System.out.println("Class represented by myClass: " + myClass.toString()); // Get the ProtectionDomain of myClass // using getProtectionDomain() method System.out.println("ProtectionDomain of myClass: " + myClass.getProtectionDomain()); } catch (Exception e) { System.out.println(e); } } }
Producción:
Class represented by myClass: class Test java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getProtectionDomain")
Ejemplo 2:
// Java program to demonstrate // getProtectionDomain() method import java.util.*; class Main { private Object obj; public static void main(String[] args) throws ClassNotFoundException, NoSuchFieldException { try { // returns the Class object for this class Class myClass = Class.forName("Main"); System.out.println("Class represented by myClass: " + myClass.toString()); String ProtectionDomainName = "obj"; // Get the ProtectionDomain of myClass // using getProtectionDomain() method System.out.println("ProtectionDomain of myClass: " + myClass.getProtectionDomain()); } catch (Exception e) { System.out.println(e); } } }
Producción:
Class represented by myClass: class Main java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getProtectionDomain")
Referencia: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getProtectionDomain–