java反射

利用java反射方法设置属性
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package com.baobaotao.reflect;
 
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
 
/**
  * Created by xu on 2016/7/4.
  */
public class ReflectTest {
     public static Car initByDefaultConst() throws Throwable {
 
         //1.通过类装载器获取Car类对象
         ClassLoader loader = Thread.currentThread().getContextClassLoader();
         Class clazz = loader.loadClass( "com.baobaotao.reflect.Car" );
 
         //2.获取类的默认构造器对象并通过它实例化Car
         Constructor cons = clazz.getConstructor((Class[]) null );
         Car car = (Car) cons.newInstance();
 
         //3.通过反射方法设置属性
         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;
     }
 
     public static void main(String[] args) throws Throwable {
         Car car = initByDefaultConst();
         car.introduce();
     }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值