标签:
1. 代码结构
.
├── com
│ └── test
│ └── MyTest.java
└── MainCall.java
2. 代码内容
MyTest.java:
packagecom.test;public classMyTest
{public voiddo_test()
{
System.out.println("Doing test...\n");
}
}
MaiCall.java
importjava.lang.reflect.Method;public classMainCall
{public static voidmain(String[] args)
{
System.out.println("Hello World!\n");
Class> mt = null;try{
mt= Class.forName("com.test.MyTest");
}catch(Exception e) {
e.printStackTrace();
}
System.out.println("ClassName: " +mt.getName());try{
Method method= mt.getMethod("do_test");
method.invoke(mt.newInstance());
}catch(Exception e) {
e.printStackTrace();
}
}
}
3.编译
javac com/test/MyTest.java
javac MainCall.java
编译成功后:
.
├── com
│ └── test
│ ├── MyTest.class
│ └── MyTest.java
├── MainCall.class
└── MainCall.java
4. 执行
java MainCall得到输出:
Hello World!
ClassName: com.test.MyTest
Doing test...
标签: