Test.java
SubTest.java
Property.java
package test;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Test {
public static void main(String[] args) {
try {
Test test = new Test();
test.test_4();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void test_4() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
IllegalAccessException, InvocationTargetException, InstantiationException {
Method method = SubTest.class.getMethod("test", int.class, String.class);
Object obj = method.invoke(SubTest.class.newInstance(), 5, "name");
System.out.println(((Property) obj).getId());
System.out.println(((Property) obj).getName());
}
public void test_3() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
IllegalAccessException, InvocationTargetException, InstantiationException {
Method method = SubTest.class.getMethod("main", String[].class);
method.invoke(SubTest.class.newInstance(), (Object) new String[] { "1", "ad", "eee" });
}
public void test_2() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
IllegalAccessException, InvocationTargetException, InstantiationException {
Method method = SubTest.class.getMethod("test1", String[].class);
method.invoke(SubTest.class.newInstance(), (Object) new String[] { "1", "ad", "eee" });
}
public void test_1() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
IllegalAccessException, InvocationTargetException, InstantiationException {
Method method = SubTest.class.getMethod("test1", String.class);
Object obj = method.invoke(SubTest.class.newInstance(), (Object) "ad");
System.out.println((String) obj);
}
}
SubTest.java
package test;
public class SubTest {
public static void main(String[] args) {
if (args != null) {
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}
public void test1(String[] args) {
if (args != null) {
for (int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}
public String test1(String arg) {
return arg;
}
public Property test(int id, String name) {
return new Property(id, name);
}
}
Property.java
package test;
public class Property {
public int id;
public String name;
public Property(int id, String name) {
super();
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}