java如何用反射获取类实例?

新农商网 全部 1014

java如何用反射获取类实例?

回复

共2条回复 我来回复
  • 程序员小轩
    程序员小轩
    这个人很懒,什么都没有留下~
    评论

    • 调用运行时类本身的.class属性

    Class clazz=Person.class;

    //创建class对应的运行时类Person对象

    System.out.println(clazz);

    Class clazz1=String.class;

    System.out.println(clazz1);

    • 运行时类的对象获取

    Person p=new Person();

    Class clazz2=p.getClass();

    System.out.println(clazz2);

    • 通过Class的静态方法获取

    String className="test.Person";

    Class clazz3=Class.forName(className);

    System.out.println(clazz3);

    • 通过类的加载器

    ClassLoader classLoader=this.getClass().getClassLoader();

    Class clazz4=classLoader.loadClass(className);

    System.out.println(clazz4);

    2019-10-12 23:16:44 0条评论
  • 沉着雪梨69h
    沉着雪梨69h
    这个人很懒,什么都没有留下~
    评论

    想了解更多Java相关,百度搜索圈T社区,免费视频教程。纯干货

    public class Demo {private String key1 = "1";private String key2 = "2";public String getKey1() {return key1;}public void setKey1(String key1) {this.key1 = key1;}public String getKey2() {return key2;}public void setKey2(String key2) {this.key2 = key2;}public static void main(String[] args) throws Exception {//参数 “Demo” 是类的全名,如果在包结构下,要有完整包路径 比如: com.test.DemoClass<?> clazz = Class.forName("Demo");//“Demo”类必须有默认构造方法,否则会抛出异常Demo demo = (Demo) clazz.newInstance();System.out.println(demo.getKey1());System.out.println(demo.getKey2());}}

    2019-10-12 14:05:12 0条评论