public class Car { private String brand; private String color; private int maxSpeed; public Car() { } public Car(String brand, String color, int maxSpeed) { this.brand = brand; this.color = color; this.maxSpeed = maxSpeed; } public String getBrand() { return brand; } public void setBrand(String brand) { this.brand = brand; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } public int getMaxSpeed() { return maxSpeed; } public void setMaxSpeed(int maxSpeed) { this.maxSpeed = maxSpeed; } public void introduce() { System.out.println("brand:"+brand+";color:"+color+";maxspeed:"+maxSpeed); }}
//通过类加载器加载Car类对象ClassLoader loader = Thread.currentThread().getContextClassLoader();Class<?> clazz = loader.loadClass("com.example.demo.Test.Car"); //获取类的默认构造器并通过它实例化CarConstructor cons = clazz.getDeclaredConstructor((Class[]) null);Car car = (Car) cons.newInstance(); //通过反射方法设置属性Method setBrand = clazz.getMethod("setBrand", String.class);setBrand.invoke(car, "红旗CA72");Method setColor = clazz.getMethod("setColor", String.class);setColor.invoke(car, "黑色");Method setMaxSpeed = clazz.getMethod("setMaxSpeed", int.class);setMaxSpeed.invoke(car, 200);return car;
时间: 2024-12-24 15:51:31