自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 浅析JVM类加载过程

本文基于博主日常学习过程中积累(b站韩老师JAVA课程)及阅读《深入JVM》第七章部分内容后写的针对Java底层类加载这个过程中的知识点总结,一个类型从被加载到虚拟机中开始,到卸载出内存为止,整个生命周期将会经历大致流程如图所示,其中加载、验证、准备、初始化、卸载这五个阶段顺序是确定的,类型的加载过程,而解析阶段较为特殊,有时候可能会在初始化阶段后再开始,这也支持了Java,这里要注意是按部就班地开始而不是完成一个再开始下一个,这些阶段通常是互相交叉着进行。

2024-03-19 21:36:12 1844 1

原创 Java网络编程

计算机网络就是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来。根据网络覆盖的范围不同,对网络进行分类:局域网、城域网、广域网。局域网:覆盖范围最小,覆盖一个机房或者一个教室等城域网:覆盖范围较大,可以覆盖一整个城市。广域网:覆盖范围最大,可以覆盖全国,甚至全球,万维网是广域网的代表。

2024-03-16 15:21:54 1021 1

原创 浅识Java多线程

sleep、yield、join都会使当前线程让出cpusleep会休眠一段时间,不考虑其他线程的优先级,放弃cpu之后转为阻塞态。yield没有时间间隔,它会使线程重新回到就绪态来争夺cpujon是会立即放弃cpu不考虑其他线程的优先级,放弃cpu后转为阻塞态。

2024-03-14 21:15:25 1973 1

原创 文件IO超详细

IO指的是程序与外部设备或者其他计算机进行交互的操作,几乎所有的程序都有输入输出操作例如从键盘上读取和写入数据。Java把这些输入输出操作通过统一的接口来表示。I:input 即将数据读入内存,进行数据的读操作O: output 即往内存设备写数据,称为输出,进行数据的write操作。

2024-03-13 15:13:52 932 1

原创 集合快速入门及使用4

TreeSet也是Set接口下的一个实现类,TreeSet底层实际上与TreeMap一致,放入TreeSet集合中的东西实际上是放入了TreeMap的Key属性,TreeSet默认的构造器中,传入的顺序是无序的,不可重复的,但可以按照元素大小顺序自动排序,而底下源码也解释了如何自定义类中排序的规则,举了String类Compare的例子,可以自定义的对进入TreeSet的元素进行排序。如果table数组使用到了临界值12,就会扩容到16*2 =32,新的临界值就是32*0.75=24,以此类推。

2024-03-11 18:49:12 2146 1

原创 集合快速入门及使用3

在添加一个元素时,先求hash值,再求索引,确定该元素在tabele的位置,然后将添加的元素加入到双向链表(如果已经存在,不添加)大致上,LinkedHashSet与HashSet一样,但LinkedHashSet有双向链表来保证元素有序,有哈希表来保证元素的唯一性,与HashSet底层的去重机制相同,数组类型时HashMap$Node[]存放的元素/数据是LinkedHashMap$Entry类型。HashSet底层实际上是HashMap的底层,而HashMap的底层实际上是。,实现了元素的大量存储。

2024-03-10 21:45:57 1009 1

原创 集合快速入门及使用2

(例如ArrayList<Integer>),因为静态成员方法和变量是在类加载时就已经初始化,直接使用类名调用,因此在泛型的类型参数未确定时,静态成员有可能被调用,所以。<E>是一种特殊的引用数据类型——泛型,泛型的用途很广,在本文就简单做一介绍,后续出专门的文章来解释泛型。Vector是线程同步的,线程安全,在开发中,需要线程同步安全时,往往采用Vector。接上文,ArrayList实际上是List接口的实现类,底层实际上是。无参,默认10,满后按两倍扩容。指定大小,每次直接2倍数扩充。

2024-03-09 09:00:00 285

原创 集合快速入门及使用1

Collection接口实现子类可以存放多个元素,每个元素都可以是一个对象(Object),有些Collection没有直接实现的子类,是通过其子接口Set,List来实现的。集合可以分为单列集合和双列结合,Collection接口下两个重要的子接口List Set实现的子类都是单列集合,Map接口的实现子类是双列集合,存放的K-V(键值对)。List 集合中的每个元素都有其对应的顺序索引,即支持索引。Object remove(int index):移除指定 index 位置的元素,并返回此元素。

2024-03-08 18:54:55 357 1

原创 JavaSE中常用类及其方法

基本数据类型及其包装类对应关系拆箱操作即为将包装类转为基本数据类型。代码如下jdk5以前为手动装箱和手动拆箱,在jdk5之后有了自动装箱和拆箱方式自动装箱和拆箱代码如下其实自动装箱拆箱底层逻辑与手动无异,其他包装类的方法类似。

2024-03-04 20:12:23 558

原创 Java23种设计模式——单例设计模式

java设计模式之单例设计模式

2024-03-03 14:00:56 442 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除