{
//返回一个class数组
return new Class[]{String.class};
}
//这里是私有的
private void aa1(InputStream in)
{
System.out.println(in);
}
//这里是静态方法
public static void aa1(int num)
{
System.out.println(num);
}
//调用main方法
public static void main(String[] args)
{
System.out.println("main");
}
}
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
public class Person
{
public String name = "name1";
private int password = 123;
private static int age = 23;
public Person()
{
System.out.println("Person");
}
public Person(String name)
{
System.out.println(name);
System.out.println("Person name");
}
public Person(String name, int password)
{
System.out.println(name + ";" + password);
}
private Person(List list)
{
System.out.println("list");
}
//*****************下面的是讲的 反射方法*************
public void aa1()
{
System.out.println("aa1");
}
public void aa1(String name, int password)
{
System.out.println(name + ":" + password);
}
public Class[] aa1(String name , int[] password)
{
//返回一个class数组
return new Class[]{String.class};
}
//这里是私有的
private void aa1(InputStream in)
{
System.out.println(in);
}
//这里是静态方法
public static void aa1(int num)
{
System.out.println(num);
}
//调用main方法
public static void main(String[] args)
{
System.out.println("main");
}
}
***************************************************邪恶的分割线**********************************************************************************************************************
//反射构造函数
[java]
import java.lang.reflect.Constructor;
import java.util.*;
public class Demo
{
/**反射类的构造函数,创建类的对象
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception
{
//test1();
//test2();
//test3();
//test4();
test5();
}
// 反射构造函数 public Person()
public static void test1() throws Exception
{
//加载类
Class clazz = Class.forName("cn.com.day1.Person");
//加载类后可以反射出类中的构造方法
Constructor c = clazz.getConstructor(null);
Person p = (Person)c.newInstance(null);
System.out.println(p.name);
}
// 反射构造函数 public Person(String name)
public static void test2() throws Exception
{
//加载类
Class clazz = Class.forName("cn.com.day1.Person");
//加载类后可以反射出类中的构造方法
Constructor c = clazz.getConstructor(String.class);
Person p = (Person)c.newInstance("xxxxxx");
System.out.println(p.name);
}
// 反射构造函数 Person(String name, int password)
public static void test3() throws Exception
{
//加载类
Class clazz = Class.forName("cn.com.day1.Person");
Constructor c = clazz.getConstructor(String.class,int.class);
Person p = (Person)c.newInstance("两个参数", 2);
System.out.println(p.name);
}
// 反射构造函数 Person(List list)
public static void test4() throws Exception
{
//加载类
Class clazz = Class.forName("cn.com.day1.Person");
//因为这里是私有的所以必须用getDeclaredxxx xxx代表可能是方法 构造方法 成员变量等
Constructor c = clazz.getDecla