avatar
文章
72
标签
59
分类
21

主页
标签
分类
链接
关于笔者
玲辰书斋
搜索
主页
标签
分类
链接
关于笔者

玲辰书斋

反射复习
发表于2022-11-24|Java
反射复习能干嘛​ 当我们创建一个对象时,需要事先在源码中进行编写,例如:new Object(),但如果未来发生变化,我就不得不在源码中进行修改,这也违反了开闭原则,我们能不能仅修改配置文件就可以调整系统中需要创建的类。比如说我在配置文件写: classPathName=org.Mysql.SQLBuilder mathod=getSqlSession ​ 我想未来我的系统可以读取该配置文件,知道需要的是一个org.Mysql.SQLBuilder类,并且调用getSqlSession方法。等到未来如果修改成: classPathName=org.Oracle.SQLBuilder mathod=getSqlSessions ​ 那系统也能动态的感知到现在需要的是org.Oracle.SQLBuilder,并要调用getSqlSessions方法。在使用反射前我们是无法解决的,因为所有使用的类,在编译期就固定了。所以引出了反射技术。也就是为了在运行期,可动态获取类信息或者创建对象。 ​ 这在我们学习框架例如Spring,Mybatis时就经常使用,比如我想动 ...
Java基础
发表于2022-11-23|Java
List 集合中线程安全的方案: Collections.synchronizedList(arrayList); Vector CopyOnWriteArrayList Collections.synchronizedListCollections.synchronizedList 使用了装饰者模式,将原本的List包装了一层,在调用List原本的方法时,通过多态进行加锁操作,这里我们注意:读写操作加锁,获取迭代器不加锁 public boolean add(E e) { synchronized (mutex) {return c.add(e);} } public E get(int index) { synchronized (mutex) {return list.get(index);} } public Iterator<E> iterator() { return list.iter ...
1…78
avatar
庚辰
要么读书,要么旅行,身体和心灵总有一个要在路上.
文章
72
标签
59
分类
21
Follow Me
最新文章
Rails层级设计演化
Rails层级设计演化2025-07-09
警惕AI
警惕AI2025-04-06
Ruby元编程实战
Ruby元编程实战2025-02-09
RSpec 测试示例与技巧说明
RSpec 测试示例与技巧说明2025-01-12
位运算 & (与)实际应用
位运算 & (与)实际应用2024-12-08
分类
  • JVM5
  • Java4
  • LSP1
  • Linux2
  • Redis2
  • Ruby10
  • Spring4
  • Turbo-Rails11
标签
AI AQS锁 Filter IOC IO流 Interceptor JavaScript LSP Mysql OOP Promis RMI RPC Rails Ruby SDK SQL Servlet Shell SpringMVC SublimeText Zed electron jdbc mysql opencv orm rails ruby rubyGem turbo 事务 二叉树 位运算 元编程 内存分配 内存溢出 加密,https 博客搭建 反射
归档
  • 七月 20251
  • 四月 20251
  • 二月 20251
  • 一月 20251
  • 十二月 20242
  • 十月 20241
  • 八月 20241
  • 七月 20241
网站资讯
文章数目 :
72
本站访客数 :
本站总访问量 :
最后更新时间 :
©2020 - 2025 By 庚辰
框架 Hexo|主题 Butterfly
陕ICP备2022014054号
搜索
数据库加载中