- 博客(7)
- 收藏
- 关注
原创 Java动态代理的设计与实现
文章目录简述Java代理模式的设计与实现动态代理技术静态代理实例动态代理实例动态代理原理分析总结简述Java代理模式的设计与实现1.代理对象存在的价值主要用于拦截对真实业务对象的访问,建立代理类是为了增强、扩展被代理类(即目标对象)的功能,实际上业务还是调用目标对象的方法。2.实现:第一步:先写一个接口,接口中封装了客户端(目标对象)需要的执行的操作第二步:代理和客户端同时实现该接口,其中客户端中真正实现了接口中的方法,是一个真正的实体类,而代理只是保存了一个客户端的引用,使得其能访问该实体,代理
2020-08-01 14:00:11
164
原创 面试题之JVM内存结构
JVM 可以分为 5 个部分,分别是:类加载器(Class Loader):加载字节码文件到内存。运行时数据区(Runtime Data Area):JVM 核心内存空间结构模型。执行引擎(Execution Engine):对 JVM 指令进行解析,翻译成机器码,解析完成后提交到操作系统中。本地库接口(Native Interface):供 Java 调用的融合了不同开发语言的原生库。...
2020-04-25 14:54:10
327
原创 面试题之详解HashMap
本文着重介绍关于Hashmap的常见面试题,读者需对HashMap有基本的了解文章目录1.HashMap长度为什么是2的幂次方2.HashMap多线程操作导致死循环问题3.HashMap的底层实现4.扩容机制1.HashMap长度为什么是2的幂次方我们利用HashMap的hash对数组长度进行取模运算得到数组下标再存放到对应下标的数组中。1.7以前是直接进行%取模,在1.8优化成了位运算...
2020-04-16 00:28:53
1800
1
转载 看完必懂红黑树
转载自掘金:https://juejin.im/post/5df4aaefe51d45581269a6d2#heading-5文章太长,请移步原文,强烈推荐!
2020-04-14 17:56:43
287
原创 详解HashMap和Hashtable
1.底层结构:HashMap和Hashtable的底层结构是都是数组加链表;2.安全性:HashMap 是非线程安全的,HashTable 是线程安全的;HashTable 内部的方法基本都经过synchronized 修饰(如果你要保证线程安全的话就使用ConcurrentHashMap吧);3.对null键和null值的支持:HashMap支持null键和null值,可以有多个null值...
2020-04-12 18:58:05
287
转载 数据结构之哈希表Java
转载自https://zhuanlan.zhihu.com/p/32329381在讲解HashMap集合之前,我们先说说一个重要的数据结构—哈希表。哈希表是一种非常优秀数据结构,对哈希表进行数据的插入,查找(有时也包括删除)的时间复杂度都是O(1)。从这个时间复杂度,我们就可以知道哈希表是基于数组实现的,因为只有数组才可以直接通过下标获取对应的元素,而其他的数据结构要获取某个位置元素,时间复...
2020-04-10 14:12:55
293
原创 深入理解Java装箱与拆箱
写给小白看的Java基础知识,阅读本文大概需要7分钟Java中有8种基础数据类型,boolean,char,byte,short,int,long,float,double。从jdk5开始提供了自动装箱拆箱机制,对应的包装类型即Boolean,Character,Byte,Short,Integer,Long,Float,Double。首先解释一下为什么要引入装箱和拆箱机制,因为Java是面...
2020-04-06 11:49:11
241
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人