zoukankan      html  css  js  c++  java
  • java反射小例子

    package com.txwsqk.reflect;
    
    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 void intruduce(){
    		System.out.println("brand "+brand+" color: "+color+" 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;
    	}
    	
    }
    

     主函数

    package com.txwsqk.reflect;
    
    import java.lang.reflect.Constructor;
    import java.lang.reflect.Method;
    
    public class CarTest {
    
    	public static Car initByDefaultConst() throws Throwable{
    		ClassLoader loader = Thread.currentThread().getContextClassLoader();
    		Class<?> clazz = loader.loadClass("com.txwsqk.reflect.Car");
    		Constructor<?> cons = clazz.getDeclaredConstructor((Class[])null);
    		Car car = (Car) cons.newInstance();
    		
    		Method setBrand = clazz.getMethod("setBrand", String.class);
    		setBrand.invoke(car, "BMW");
    		Method setColor = clazz.getMethod("setColor", String.class);
    		setColor.invoke(car, "red");
    		Method setMaxspeed = clazz.getMethod("setMaxspeed", int.class);
    		setMaxspeed.invoke(car, 150);
    		return car;
    		
    	}
    	public static void main(String[] args) throws Throwable {
    		Car car = initByDefaultConst();
    		car.intruduce();
    
    	}
    
    }
    

     输出:

    brand BMW color: red maxspeed: 150

  • 相关阅读:
    出差归来
    五一假期的开端
    哭。。。五一这就过拉。。。还没什么感觉那。。。呜呜
    爱姬家族新成员。。。
    大道至简读后感
    假期进度报告
    假期报告
    假期进度报告
    假期进度报告
    假期进度报告
  • 原文地址:https://www.cnblogs.com/txwsqk/p/3816711.html
Copyright © 2011-2022 走看看