[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 

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

  1. //①通过类装载器获取Car类对象
  2. ClassLoader loader = Thread.currentThread().getContextClassLoader();
  3. Class clazz = loader.loadClass("com.baobaotao.reflect.Car");
  4. //②获取类的默认构造器对象并通过它实例化Car
  5. Constructor cons = clazz.getDeclaredConstructor((Class[])null);
  6. Car car = (Car)cons.newInstance();
  7. //③通过反射方法设置属性
  8. Method setBrand = clazz.getMethod("setBrand",String.class);
  9. setBrand.invoke(car,"红旗CA72");
  10. Method setColor = clazz.getMethod("setColor",String.class);
  11. setColor.invoke(car,"黑色");
  12. Method setMaxSpeed = clazz.getMethod("setMaxSpeed",int.class);
  13. setMaxSpeed.invoke(car,200);
  14. return car;
  15. }
  16. public static void main(String[] args) throws Throwable {
  17. Car car = initByDefaultConst();
  18. car.introduce();
  19. }
  20. }

注意:获取当前类的类加载器ClassLoader loader = Thread.currentThread().getContextClassLoader();

注意:获取当前类的类加载器ClassLoader loader = Thread.currentThread().getContextClassLoader();

注意:获取当前类的类加载器ClassLoader loader = Thread.currentThread().getContextClassLoader();

注意:获取当前类的类加载器ClassLoader loader = Thread.currentThread().getContextClassLoader();

Spring IOC知识java反射的更多相关文章

  1. Spring Ioc知识整理

    Ioc知识整理(一): IoC (Inversion of Control) 控制反转. 1.bean的别名 我们每个bean元素都有一个id属性,用于唯一标识实例化的一个类,其实name属性也可用来 ...

  2. Spring IoC — 基于Java类的配置

    普通的POJO只要标注@Configuration注解,就可以为Spring容器提供Bean定义的信息了,每个标注了@Bean的类方法都相当于提供一个Bean的定义信息. 基于Java类的配置方法和基 ...

  3. 【小家Spring】Spring IoC是如何使用BeanWrapper和Java内省结合起来给Bean属性赋值的

    #### 每篇一句 > 具备了技术深度,遇到问题可以快速定位并从根本上解决.有了技术深度之后,学习其它技术可以更快,再深入其它技术也就不会害怕 #### 相关阅读 [[小家Spring]聊聊Sp ...

  4. Java Spring IOC用法

    Java Spring IOC用法 Spring IoC 在前两篇文章中,我们讲了java web环境搭建 和 java web项目搭建,现在看下spring ioc在java中的运用,开发工具为In ...

  5. 应聘阿里,字节跳动,美团必须掌握的Spring IOC与工厂模式

    Spring IOC与工厂模式 PS:本文内容较为硬核,需要对java的面向对象.反射.类加载器.泛型.properties.XML等基础知识有较深理解. (一)简单介绍 在讲Spring IOC之前 ...

  6. Spring IOC 源码简单分析 04 - bean的初始化

      ### 准备 ## 目标 了解 Spring 如何初始化 bean 实例 ##测试代码 gordon.study.spring.ioc.IOC04_Initialization.java publ ...

  7. Spring IOC 源码简单分析 02 - Bean Reference

    ### 准备 ## 目标 了解 bean reference 装配的流程 ##测试代码 gordon.study.spring.ioc.IOC02_BeanReference.java   ioc02 ...

  8. Spring IOC 源码简单分析 01 - BeanFactory

    ### 准备 ## 目标 了解 Spring IOC 的基础流程 ## 相关资源 Offical Doc:http://docs.spring.io/spring/docs/4.3.9.RELEASE ...

  9. Spring IOC 少

    控制反转好处 IOC:控制反转也叫依赖注入,IOC利用java反射机制,AOP利用代理模式.所谓控制反转是指,本来被调用者的实例是有调用者来创建的,这样的缺点是耦合性太强,IOC则是统一交给sprin ...

随机推荐

  1. loadView、viewDidLoad及viewDidUnload的关系(转)

    本文目录 一.loadView 二.viewDidLoad 三.viewDidUnload 四.三个方法的关系 标题中所说的3个方法,都是UIViewController的方法,跟UIViewCont ...

  2. ACM训练联盟周赛 A. Teemo's bad day

    65536K   Today is a bad day. Teemo is scolded badly by his teacher because he didn't do his homework ...

  3. JAVA-基础(六) Java.serialization 序列化

    序 列 化 序列化(serialization)是把一个对象的状态写入一个字节流的过程. Serializable接口 只有一个实现Serializable接口的对象可以被序列化工具存储和恢复.Ser ...

  4. JAVA 基础--开发环境 vscode 搭建

    对于使用 Visual Studio Code 的 Java 开发者来说,Language Support for Java(TM) by Red Hat 扩展提供了非常好的语言特性支持,比如智能感知 ...

  5. org.hibernate.AnnotationException: No identifier specified for entity: com.example1.demo1.Entity.User错误

    最近在公司带人,他们问我的问题在这里也顺便总结下. 此项目为SpringDataJpa项目. 出现的错误如下: Caused by: org.hibernate.AnnotationException ...

  6. 用asp.net+Jquery+Ajax+sqlserver编写的 (英语六级记单词)

    开始(英语对程序员的重要性引用) 出处 英语的重要性已经毋庸置疑,对于程序员来说更甚,一些最新的技术资料是英文的,如果想进入外企英语也是一个很重要的条件.对于程序员来说怎样学习好英语,在此谈一下我的一 ...

  7. python - 自动化测试框架 - sendMail

    # -*- coding:utf-8 -*- '''@project: Voctest@author: Jimmy@file: sendMail.py@ide: PyCharm Community E ...

  8. [java开发篇][dom模块] 遍历解析xml

    http://blog.csdn.net/andie_guo/article/details/24844351 XML DOM节点树 XML DOM将XML文档作为树结构,树结构称为一个节点树.所有的 ...

  9. [git 学习篇] git commit原理 --实践体会

    1 现对readme.txt作出修改,增加一行内容: Git has a mutable index called stage. Git is a distributed version contro ...

  10. 前端CSS规范大全(转)

    一.文件规范 1.文件均归档至约定的目录中. 具体要求通过豆瓣的CSS规范进行讲解: 所有的CSS分为两大类:通用类和业务类.通用的CSS文件,放在如下目录中: 基本样式库 /css/core 通用U ...