Class<?> clazz = MyClass.class; // 通过类名获取 // Class<?> clazz = MyInterface.class; // 通过接口名获取 // Class<?> clazz = myObject.getClass(); // 通过对象的类对象获取
Object obj = clazz.newInstance();
注意:从Java 9开始,clazz.newInstance()
方法已经被弃用,推荐使用clazz.getDeclaredConstructor().newInstance()
方法来创建对象。
Method method = clazz.getMethod("myMethod", String.class); Object result = method.invoke(obj, "parameterValue");
Field field = clazz.getField("myField"); Object value = field.get(obj); // 获取属性值 field.set(obj, newValue); // 设置属性值
通过以上步骤,你可以使用Java反射机制简化对象的创建过程。然而,反射机制可能会导致性能下降和安全问题,因此在实际项目中应谨慎使用。