//辅助类
public class Student{
String name;
public Student() {
}
public Student(String name) {
this.name=name;
}
public static int doHomework(int a, String name) {
System.out.println("正在做作业");
return a;
}
}
构造方法
1、获取构造方法
-
①Constructor[] getConstrutors():返回该Class对象表示类包含的所有public构造方法(不含继承)所对应Constructor对象数组。
-
②Constructor getConstrutor(Class<?>… parameterTypes):返回与该Class对象表示类中参数列表相匹配的public构造函数(不含继承)对应的Constructor对象。
public class Test{
public static void main(String[] args) {
try{
Class clazz;
clazz=Student.class;//获取类
Constructor constructor=clazz.getConstructor();//获取类中的构造方法
System.out.println(constructor.getName());
constructor=clazz.getConstructor(String.class);//获取类中第二种构造方法
System.out.println(constructor.getName());
} catch (Exception e) {
e.printStackTrace();
}
}
}
-
③Constructor<?>[] getDeclaredConstructors():返回一个该Class对象表示类中声明的所有构造方法(不区分访问权限)对应的Constructor对象数组。
-
④Constructor getDeclaredConstructor(Class<?>… parameterTypes):返回与该Class对象表示类中定义的形参类型相匹配的构造方法(不区分访问权限:如果把Student类中的构造方法访问权限改为非public的权限也不影响)的Constructor对象。
public class Test{
public static void main(String[] args) {
try{
Class clazz;
clazz=Student.class;//获取类
Constructor constructor=clazz.getDeclaredConstructor();//获取类中的构造方法
System.out.println(constructor.getName());
constructor=clazz.getDeclaredConstructor(String.class);//获取类中第二种构造方法
System.out.println(constructor.getName());
} catch (Exception e) {
e.printStackTrace();
}
}
}