一千萬個為什麽

搜索

Java反射框架和安全性

假設我的應用程序的外部庫中有一個單例類。但我仍然可以 使用反射創建該特定類的實例。喜歡這個

    Class clas = Class.forName(Private.class.getName());

    for(Constructor c : clas.getDeclaredConstructors()){
        c.setAccessible(true);
        Private p = (Private) c.newInstance();
        System.out.println(p);
    }

我怎麽能限制這個? 。

謝謝 Ĵ

最佳答案

使用 SecurityManager 並控制 ReflectPermission(“suppressAccessChecks”)示例)。

安全管理器雖然會影響性能,但很少在服務器端使用。

轉載註明原文: Java反射框架和安全性