1.反射概念

  Java中的反射机制是指在运行状态中,对于任意一个类,能够动态获取这个类中的属性和方法;对于任意一个对象,都能够任意调用它的属性和方法。这种动态获取类的信息以及动态调用对象方法的功能称为Java的反射机制。

2.反射的实现方式

   方法一:直接通过一个class的静态变量class获取

Class cls = String.class;

  方法二:通过该实例变量提供的getClass()方法获取

String s = "Hello";
Class cls = s.getClass();

  方法三:如果知道一个class的完整类名,可以通过静态方法Class.forName()获取

Class cls = Class.forName("java.lang.String");

  因为Class实例(正在运行的 Java 应用程序中的类和接口)在JVM中是唯一的,所以,上述方法获取的Class实例是同一个实例。可以用==比较两个Class实例

Class cls1 = String.class;
String s = "Hello";
Class cls2 = s.getClass();
boolean sameClass = cls1 == cls2; // true

3.Class对象操作

   3.1字段操作

public class Apple {
    private String color;
    private Float weight;

    public Apple(String color, Float weight) {
        super();
        this.color = color;
        this.weight = weight;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public Float getWeight() {
        return weight;
    }

    public void setWeight(Float weight) {
        this.weight = weight;
    }

    public String toString() {
        return "[" + color + "," + weight  + "]";
    }
    
    private String toString(String name) {
        return  name  +  " like  the [" + color + "," + weight  + "] apple";
    }

}
Apple

相关文章:

猜你喜欢
相关资源
相似解决方案