![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 92
NEVERTHELESS0
这个作者很懒,什么都没留下…
展开
-
JVM原理速记复习Java虚拟机总结思维导图面试必备
良心制作,JVM原理速记复习Java虚拟机总结思维导图面试必备。一、运行时数据区域线程私有程序计数器记录正在执行的虚拟机字节码指令的地址(如果正在执行的是Native方法则为空),是唯一一个没有规定OOM(OutOfMemoryError)的区域。Java虚拟机栈每个Java方法在执行的同时会创建一个栈桢用于存储局部变量表、操作数栈、动态链接、方法出口等信息。从方法调用直到执行完成的过程,对应着一个栈桢在Java虚拟机栈中入栈和出栈的过程。(局部变量包含基本数据类型、对象引用referenc原创 2019-11-16 22:25:47 · 260 阅读 · 0 评论 -
Java Vector底层实现原理源码详细分析Jdk8
与ArrayList比较Vector是同步的,因此开销就比ArrayList大,访问速度更慢。最好使用ArrayList而不是Vector,因为同步操作完全可以有程序员自己来控制。Vector每次扩容请求其大小的2倍(也可以通过构造函数设置增长的容量),而ArrayList是1.5倍代替方案可以使用Collections.synchronizedList();得到一个线程安全的ArrayList。或者使用CopyOnWriteArrayList原创 2019-11-03 14:52:51 · 687 阅读 · 2 评论 -
Java ArrayList底层实现原理源码详细分析Jdk8
ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurrent并发包下的CopyOnWriteArrayList类。ArrayList实现了Serializable接口,因此它支持序列化,能够通过序列化传输,实现了RandomAcc原创 2019-11-02 21:27:28 · 230 阅读 · 0 评论 -
Java HashMap底层实现原理源码分析Jdk8
在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的链表都存储在一个链表里。但是当位于一个桶中的元素较多,即hash值相等的元素较多时,通过key值依次查找的效率较低。而JDK1.8中,HashMap采用位桶+链表+红黑树实现,当链表长度超过阈值(8)时,将链表转换为红黑树,这样大大减少了查找时间。原创 2019-10-30 21:19:49 · 188 阅读 · 0 评论 -
Java设计模式_七大原则
单一职责原则。对类来说,即一个类应该只负责一项职责。开闭原则。对扩展开放,对修改关闭。在程序需要进行扩展的时候,不能去修改原有代码,使用接口和抽象类实现一个热插拔的效果。里氏替换原则。任何基类可以出现的地方,子类一定可以出现。实现抽象的规范,实现子父类相互替换。原创 2019-10-29 11:16:05 · 205 阅读 · 0 评论 -
Java Web服装购物车案例(servlet+bean+jsp)
事情来得太突然,一个朋友说是要我帮忙做一个JavaWeb的课程设计,在过一天就要去答辩了…这我哪受的了时间这么短还没有~~~,正准备委婉的拒绝的时候他说写完之后给我那个啥…好吧,我就是这么庸俗那好吧,泡杯雀巢(特浓)开工。原创 2019-06-19 13:26:13 · 1507 阅读 · 0 评论 -
JAVA基础知识注意事项
JAVA核心技术卷一 (第十版)只有方法名和参数类型叫做方法的签名, 不同的返回类型值不能作为方法的签名。(4.6.1)这是域与局部变量的主要不同点。 必须明确地初始化方法中的局部变量。 但是,如果没有初始化类中的域, 将会被自动初始化为默认值(0、 false 或 null )。(4.6.2)初始化块或静态的初始化块在创建对象的时候执行里面的代码。(4.6.7)从编译器的角度来看, ...原创 2019-05-09 15:30:16 · 106 阅读 · 0 评论 -
对于Serializable的理解
对于Serializable的理解Last Edited: Apr 04, 2019 2:53 PMTags: java开始序列化:把Java对象转换为字节序列的过程。反序列化:把字节序列恢复为Java对象的过程。序列化的解释在Java中,我们可以通过多种方式来创建对象,并且只要对象没有被回收我们都可以复用该对象,但是,我们创建出来的这些**Java对象都是存在于JVM的堆内...原创 2019-04-04 14:56:25 · 138 阅读 · 0 评论