摘要: 最近看ArrayList源码,发现很多方法都调用了System.arraycopy()方法,对这个还是有些不明不白,那就具体来康康吧! 参数:是个native方法,底层原理不再深究,可以看到有五个参数 ,分别是 源数组、源数组位置、目标数组、目标数组位置、需要拷贝源数组几个元素 写个例子康康吧: 可 阅读全文
posted @ 2020-05-31 17:45 lanvce 阅读(520) 评论(0) 推荐(0)
摘要: 类加载就是三个过程:加载、链接、初始化 链接又可以分为验证、准备、解析 ##1.加载 将class字节码文件通过类加载器装入内存中 ##2.验证 确保当前class文件的字节流所包含的内容符合当前JVM的规范要求,并且不会出现危害JVM自身安全的代码,当前字节流不符合规范会抛出VerifyError 阅读全文
posted @ 2020-05-27 21:44 lanvce 阅读(396) 评论(0) 推荐(0)
摘要: ##mysql架构总览 ##再看看一条select的语句的声明周期: 参考上面两张图来看sql的执行过程: ###1、连接 SQL客户端与与服务器建立连接,该请求被发送到连接管理器,连接成功后会验证权限等,这过程其实就是一个TCP连接的过程。注意,MySQL服务器与客户端之间的通信是“半双工”的,意 阅读全文
posted @ 2020-05-27 12:24 lanvce 阅读(422) 评论(0) 推荐(0)
摘要: 最近看到一遍很好的序列化文章,因此转载过来,原文链接在文末。 序列化和反序列化是什么?实现序列化和反序列化为什么要实现Serializable接口?实现Serializable接口就算了, 为什么还要显示指定serialVersionUID的值?我要为serialVersionUID指定个什么值? 阅读全文
posted @ 2020-05-19 16:35 lanvce 阅读(378) 评论(0) 推荐(0)
摘要: 闲话 以前学习从来不看源码 ,一是怕麻烦,二是看不懂,到现在这些简单问题还是不清楚,只能被面试官吊打了,今天就拿Arralist先开刀。 一、ArrayList的数据结构 ArrayList的底层数据结构就是一个数组,数组元素的类型为Object类型,对ArrayList的所有操作底层都是基于数组的 阅读全文
posted @ 2020-05-19 14:55 lanvce 阅读(202) 评论(0) 推荐(0)
摘要: 一、LinkedList实现原理概述 LinkedList 和 ArrayList 一样,都实现了 List 接口,但其内部的数据结构有本质的不同。LinkedList 是基于链表实现的(通过名字也能区分开来),所以它的插入和删除操作比 ArrayList 更加高效。但也是由于其为基于链表的,所以随 阅读全文
posted @ 2020-05-19 14:52 lanvce 阅读(232) 评论(0) 推荐(0)
摘要: 一. HashSet概述 HashSet是Java集合Set的一个实现类,Set是一个接口,其实现类除HashSet之外,还有TreeSet,并继承了Collection,HashSet集合很常用,同时也是程序员面试时经常会被问到的知识点: 下面是结构图 二. HashSet构造 HashSet有几 阅读全文
posted @ 2020-05-19 14:44 lanvce 阅读(279) 评论(0) 推荐(0)
摘要: 简介 上一节我们说HashSet中的元素是无序的,那么有没有什么办法保证Set中的元素是有序的呢? 答案是当然可以。 我们今天的主角LinkedHashSet就有这个功能,它是怎么实现有序的呢?让我们来一起学习吧。 问题 (1)LinkedHashSet的底层使用什么存储元素? (2)LinkedH 阅读全文
posted @ 2020-05-19 14:42 lanvce 阅读(602) 评论(0) 推荐(1)
摘要: 概述 文章的内容基于JDK1.7进行分析,之所以选用这个版本,是因为1.8的有些类做了改动,增加了阅读的难度,虽然是1.7,但是对于1.8做了重大改动的内容,文章也会进行说明。 TreeSet实现了SortedSet接口,它是一个有序的集合类,TreeSet的底层是通过TreeMap实现的。Tree 阅读全文
posted @ 2020-05-19 14:41 lanvce 阅读(467) 评论(0) 推荐(0)
摘要: 回答 1.HashMap 是一种存取高效但不保证有序的常用容器。它的数据结构为“数组+链表”,是解决哈希冲突的产物,也就是我们常说的链地址法。它实现了Map 接口采用K V 键值对存储数据,并实现了浅拷贝和序列化。 HashMap 的默认初始大小为16,初始化大小必须为2的幂,最大大小为2的30次方 阅读全文
posted @ 2020-05-19 14:40 lanvce 阅读(531) 评论(0) 推荐(1)
//小火箭