反射机制是什么概念?大多都有介绍,指的是程序在运行状态中,能够加载一个只有类名的类,加载完之后会在堆上产生一个Class对象。通过这个 Class对象可以获得类的属性、方法和其他类信息。之前对反射的应用场景感到比较模糊,今天才发现自己原来不知不觉早已经在使用着它了。

  说两个场景吧:

  

  1. spring框架中,可以通过读取配置文件,生成对象到ioc容器中,它是依赖注入的一种实现方式。

    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

  比如上面这样,spring框架在读取配置的时候就是根据class类名,利用反射机制,创建出 sessionFactory 对象。

  

  2.spring框架另外一个特性aop,面向切面编程。面向切面编程的本质是动态代理。代理的理解 ,用切入点(在spring-boot中是JoinPoint)来代理需要服务的方法,
而动态的实现则又用到了反射机制,具体实现我们则可以深入到spring框架的源码中学习。

最新文章

  1. LLVM与Clang的概述及关系
  2. http错误和异常处理,认证和代理设置
  3. FSM
  4. elasticsearch 跨网段组集群
  5. Android GLSurfaceView用法详解(二)
  6. 自己动手实现STL 02:构造析构的基本工具construct()和destroy()(stl_construct.h)
  7. class之cls
  8. vim使用(三):.viminfo和.vimrc
  9. Win7下Nginx的安装与配置,win7nginx配置
  10. opencv构建高斯卷积核
  11. C#设计模式之十八中介者模式(Mediator Pattern)【行为型】
  12. Linux批量杀死包括某个keyword的进程
  13. Python类方法、静态方法与实例方法
  14. 使用HttpClient和Jsoup实现一个简单爬虫
  15. 预测氨基酸替换的致病性及分子机制:MutPred工具的使用
  16. Android WebView无法播放视频或直播,关闭界面后任在播放的问题;
  17. Centos7升级新内核
  18. kubernetes lable 操作
  19. Spring getBean 首字母大小写问题
  20. py to exe —— pywin32

热门文章

  1. selenium+python 自动化
  2. 1~n中1的和
  3. arcgis for android apk太大
  4. Alpha版本冲刺(四)
  5. visual stdio2013软件安装及单元测试
  6. 13个实用的Linux find命令示例
  7. js &amp; 快捷键 &amp; vue bind bug
  8. UVA12538 Version Controlled IDE
  9. mysql的check约束问题
  10. STL Set和multiset 容器