小燕秋提问:
发布时间:2019-01-10
Class.forName(String,false,loader)初始化设置为false,结果还是初始化执行了静态...
悬赏2 金钱
(回答此问题,将获得2 金钱奖励)
状态问题未解决,快来回答吧
都说Class.forName(String name, boolean initialize,ClassLoader loader)方法可以选择在加载类的时候是否要对类进行初始化
可是当我设置initialize为false的时候,结果还是执行了类里面的静态代码块,是为什么呢?
- public class StringL {
- static {
- System.out.println("执行了静待代码块");
- }
- public static void main(String[] args){
- ClassLoader loader = ClassLoader.getSystemClassLoader();
- try {
- Class sample3=Class.forName("StringL",false,loader);
- }catch (ClassNotFoundException e){
- e.printStackTrace();
- }
- }
- }
复制代码
|