1)ClassUtils.java // 传入一个xxx.class对象,返回一个这个对象的实例
package org.example.testt;
public class ClassUtils {
public static <T> T getObjByClass(Class<T> clazz) {
T t = null;
try {
t = clazz.getConstructor().newInstance();
} catch (Exception e) {
e.printStackTrace();
}
return t;
}
}
2)A.java
package org.example.testt;
public class A {
private int age;
public A() {
age = 100;
}
@Override
public String toString() {
return "A{" +
"age=" + age +
'}';
}
}
3)Main.java
package org.example.testt;
public class Main {
public static void main(String[] args) {
A a = ClassUtils.getObjByClass(A.class);
System.out.println(a);
}
}
/*
A{age=100}
*/
笔记:
通过传入泛型参数,这样子在返回时就支持所有的类型了。