[javaSE] 反射-动态加载类
发布时间:2021-05-21 06:45:25 所属栏目:大数据 来源: https://www.jb51.cc
导读:Class.forName(“类的全称”) ①不仅表示了类的类类型,还代表了动态加载类 ②请大家区分编译,运行 ③编译时刻加载类是静态加载类,运行时刻加载类是动态加载类 ? Ⅰ所有的 new 对象都是静态加载类 ? 在编译的时刻就要去检测该类是否存在,如果不存在,编译
Class.forName(“类的全称”) ①不仅表示了类的类类型,还代表了动态加载类 ②请大家区分编译,运行 ③编译时刻加载类是静态加载类,运行时刻加载类是动态加载类 ? Ⅰ所有的new对象都是静态加载类 ? 在编译的时刻就要去检测该类是否存在,如果不存在,编译失败。 //对于这种情况,静态加载不适用,因为我们需要根据输入来确定加载哪个类 ? package com.tsh.reflect; class ReflectLoadDemo { public static void main(String[] args) { if(args[0].equals("Word")){ Word word=new Word(); } if(args[0].equals("Excel")){ Excel word= Excel(); } } } ? Ⅱ动态加载可以实现当使用的时候才去加载 main(String[] args) { )){ try{ Class c=Class.forName("com.tsh.reflect.Word"); c.newInstance(); }catch(Exception e){ e.printStackTrace(); } } } } class Word{} ? ? Ⅲ是代码更具有扩展性的改动,定义interface接口规范 ? (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |