java加载动态类(Class类的使用 方法的反射 成员变量的反射 java类的加载机制)

java加载动态类(Class类的使用 方法的反射 成员变量的反射 java类的加载机制)

  1. 新建动态加载类方法入口

    

 1 public class Office {
 2     public static void main(String[] args) { 
 3         try {
 4             Class c1=Class.forName(args[0]);  //接收一个参数,这里是接收参数的类
 5             OfficeAble o = (OfficeAble) c1.newInstance();  //对类进行实例化对象
 6             o.start(); //调用该类的方法
 7         } catch (ClassNotFoundException e) {
 8             e.printStackTrace();
 9         } catch (IllegalAccessException e) {
10             e.printStackTrace();
11         } catch (InstantiationException e) {
12             e.printStackTrace();
13         }
14     }
15 }

  2.新建接口,为了方便不确定的类动态加载

public interface OfficeAble {
    void start();
}

  3. 加载类

//word.java

public class Word implements OfficeAble{
    @Override
    public void start() {
        System.out.printf("Word>>>>>>>>>");
    }
}



//Excel.java

public class Excel implements OfficeAble{
    @Override
    public void start() {
        System.out.printf("Excel>>>>>>>");
    }
}

  4.运行效果

原文地址:https://www.cnblogs.com/chenqiwei/p/RunWsh_630JAVA.html