Java SecurityManager getClassContext()方法与示例
SecurityManager类getClassContext()
方法
getClassContext()方法在java.lang包中可用。
getClassContext()方法用于以“类”类型的数组返回当前正在执行的堆栈跟踪。
堆栈上方法的数量是数组的长度,index[0]元素指示当前执行的方法的类名,相邻的index[1]元素指示当前执行的方法调用者的类名,依此类推。。
getClassContext()方法是一个非静态方法,只能由类对象访问,如果尝试使用类名访问该方法,则会收到错误消息。
在当前执行堆栈的Class[]时,getClassContext()方法不会引发异常。
语法:
public Class[] getClassContext();
参数:
它不接受任何参数。
返回值:
此方法的返回类型为Class[],它以“Class”类型的数组形式返回当前执行堆栈跟踪。
示例
//Java程序演示示例 //Manager的Class[]getClassContext()方法的说明 import java.security.*; public class GetClassContext extends SecurityManager { public static void main(String[] args) { //通过使用setProperty()方法是设置策略属性 //与安全经理 System.setProperty("java.security.policy", "file:/C:/java.policy"); //实例化GetClassContext对象 GetClassContext gc = new GetClassContext(); //通过使用setSecurityManager()方法是设置 //安全经理 System.setSecurityManager(gc); //通过使用getContext()方法是返回 //类上下文数组 Class[] cl = gc.getClassContext(); //显示类上下文数组 for (int k = 0; k < cl.length; ++k) System.out.println("cl[k] = " + cl[k]); } }
输出结果
cl[k] = class GetClassContext