java 反射机制

Java反射相关的:

                        

Member接口该接口可以获取有关类成员(域或者方法)后者构造函数的信息。
AccessibleObject类该类是域(field)对象、方法(method)对象、构造函数(constructor)对象的基础类。它提供了将反射的对象标记为在使用时取消默认 Java 语言访问控制检查的能力。
Array类该类提供动态地生成和访问JAVA数组的方法。
Constructor类提供一个类的构造函数的信息以及访问类的构造函数的接口。
Field类提供一个类的域的信息以及访问类的域的接口。
Method类提供一个类的方法的信息以及访问类的方法的接口。
Modifier类提供了 static 方法和常量,对类和成员访问修饰符进行解码。
Proxy类

提供动态地生成代理类和类实例的静态方法。

Class   对象:

(1)Boolean var1 = true;

Class<?> classType2 = var1.getClass();

2.

Class<?> classType4 = Boolean.class;

3.Class<?> classType5 = Class.forName("java.lang.Boolean");

获取类的Fields:可以通过反射机制得到某个类的某个属性,然后改变对应于这个类的某个实例的该属性值

public Field getField(Stringname)    public Field[] getFields() 。。。。。。。

获取类的Method:通过反射机制得到某个类的某个方法,然后调用对应于这个类的某个实例的该方法

  获取类的Constructor:通过反射机制得到某个类的构造器,然后调用该构造器创建该类的一个实例
新建类的实例

Class<?> classType = ExtendType.class;

Object inst = classType.newInstance();

||

Constructor<?> constructor1 = classType.getConstructor();

Object inst = constructor1.newInstance();

||

Constructor<?> constructor2 =

classType.getDeclaredConstructor(int.class, String.class);

Object inst = constructor2.newInstance(1, "123");


DEMO:

Class ownerClass = Class.forName("com.test.demo.scroll.ScrollLayout");
        Method methodSet = ownerClass.getMethod("setmScrollX", Integer.TYPE);
        methodSet.invoke(myCustomLayout, 256);
        Method methodGet = ownerClass.getMethod("getmScrollX");
        int m = (Integer) methodGet.invoke(myCustomLayout);

        Method methodStop = ownerClass.getMethod("handleStop");
        methodStop.invoke(myCustomLayout);



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值