学习Spring必学的Java基础知识(1)反射

引述要学习Spring框架的技术内幕,必须事先掌握一些基本的Java知识,正所谓“登高必自卑,涉远必自迩”。以下几项Java知识和Spring框架息息相关,不可不学(我将通过一个系列分别介绍这些Java基础知识,希望对大家有所帮助。): 

[1] Java反射知识-->Spring IoC :http://www.iteye.com/topic/1123081 
[2] Java动态代理-->Spring AOP :http://www.iteye.com/topic/1123293 
[3] 属性编辑器,即PropertyEditor-->Spring IoC:http://www.iteye.com/topic/1123628 
[4] XML基础知识-->Spring配置:http://www.iteye.com/topic/1123630 
[5] 注解-->Spring配置:http://www.iteye.com/topic/1123823 
[6] 线程本地变更,即ThreadLocal-->Spring事务管理:http://www.iteye.com/topic/1123824 
[7] 事务基础知识-->Spring事务管理:http://www.iteye.com/topic/1124043 
[8] 国际化信息-->MVC:http://www.iteye.com/topic/1124044 
[9] HTTP报文-->MVC:http://www.iteye.com/topic/1124408 



    Java语言允许通过程序化的方式间接对Class进行操作,Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数、属性和方法等。Java允许用户借由这个Class相关的元信息对象间接调用Class对象的功能,这就为使用程序化方式操作Class对象开辟了途径。 

简单实例 

    我们将从一个简单例子开始探访Java反射机制的征程,下面的Car类拥有两个构造函数、两个方法以及三个属性,如代码清单3-9所示: 

代码清单3-9  Car 
Java代码  收藏代码
  1. package com.baobaotao.reflect;  
  2. public class Car {  
  3.     private String brand;  
  4.     private String color;  
  5.     private int maxSpeed;  
  6.       
  7.      //①默认构造函数  
  8.     public Car(){}  
  9.        
  10.      //②带参构造函数  
  11.     public Car(String brand,String color,int maxSpeed){   
  12.         this.brand = brand;  
  13.         this.color = color;  
  14.         this.maxSpeed = maxSpeed;  
  15.     }  
  16.   
  17.      //③未带参的方法  
  18.     public void introduce() {   
  19.        System.out.println("brand:"+brand+";color:"+color+";maxSpeed:" +maxSpeed);  
  20.     }  
  21.      //省略参数的getter/Setter方法  
  22.      …  
  23. }  

原文地址:https://www.cnblogs.com/bjanzhuo/p/3575987.html