![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java进阶
文章平均质量分 86
一叶千寻
创造价值,提升自己。
展开
-
JVM运行时数据区
一、运行时数据区Java虚拟机在执行Java程序的过程中会把它管理的内存分为若干个不同的数据区域。这些区域有着各自的用途,一级创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范》中规定,jvm所管理的内存大致包括以下几个运行时数据区域,如图所示:图解:其中置灰部分是跟随虚拟机启动而存在的,线程共享白色区域则是跟随线程启动而存在,线程私有1.程序计数器 占据一块较小的内存空间,可以看做当前线程所执行的字.原创 2020-11-03 10:57:32 · 91 阅读 · 0 评论 -
Java8 中的HashMap底层原理
版本回顾:HashMap是我们日常开发或者学习中常用的数据结构,了解它的底层原理可以更好的帮助我们使用它。首先我们知道在Java8之前,HashMap采用数组+链表的结构实现,即使用链表处理冲突,同一个hash值的节点都存储在一个链表里。但是当同一个桶中的元素较多时,即hash值相等的元素较多时,通过key依次查找的效率较低。而JDK1.8中,HashMap采用数组+链表+红黑树实现,当链表长度超过阈值(8)时,将链表转换为红黑树,这样大大减少了查找时间。首先我们看看他的结构:左边是一个原创 2020-11-01 11:06:29 · 723 阅读 · 0 评论 -
JDBC工具类--JDBCUtil
public class JDBCUtil { //1.加载驱动 static{ try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } //2.获取连接 public static Connection getConnection(.原创 2020-10-26 15:32:17 · 6807 阅读 · 3 评论 -
《java进阶二:java中Exception和Error》
前言 世界上存在永远不会出错的程序吗?答案是否定的,这也许只会出现在程序员的梦中。随着编程语言和软件的诞生,异常情况就如影随性般地纠缠着我们,只有正确处理好意外情况,才能保证程序的可靠性。Java语言在设计之初就提供了相对完善的异常处理机制,这也是Java得以大行其道地原因之一,因为这种机制大大降低了编写和维护可靠性程序的门槛。如今,异常处理机制已经成为现代编程语言的标配。 ...原创 2018-06-12 10:24:06 · 160 阅读 · 0 评论 -
《java进阶一:对java跨平台的理解》
总述 从接触Java开发到现在,对Java语言的特点除了它宣传的“write once,run anywhere”,相信对Java平台也有一定的见解。Java本身是一种面向对象的语言,最显著的特性有两个方面,一是所谓的跨平台性,一是垃圾回收机制。对于跨平台,java语言跨平台,但是java虚拟机(JVM)不跨平台。Jvm在java语言中充当“翻译官”的角色,不同的平台jvm不同(平台...原创 2018-05-31 11:12:56 · 306 阅读 · 0 评论 -
《Java进阶三:Java中的集合类》
本文仅分析部分原理和集合类的特点,不分析源码,旨在对java的集合类有一个整体的认识,理解各个不同类的关联和区别,让大家在不同的环境下学会选择不同的类来处理。Java中的集合类包含的内容很多而且很重要,很多数据的存储和处理(排序,去重,筛选等)都需要通过集合类来完成。首先java中集合类主要有两大分支:(1)Collection (2)Map先看它们的类图:(1)Collection(2)Map ...原创 2018-06-19 10:46:14 · 131 阅读 · 0 评论