摘要: JUC中锁与AQS相关知识总结 1. Lock接口 在Java5之前,要想使用锁来保护共享资源大多数情况是使用synchronized关键字。在Java5之后,并发包里增加了Lock接口及其实现类来提供锁的功能。 Lock接口与synchronized有许多区别。synchronized修饰在方法体 阅读全文
posted @ 2021-08-05 15:22 龙刃已准备出鞘 阅读(93) 评论(0) 推荐(0) 编辑
摘要: Java集合框架实现两个两种线性表,第一种是数组的实现ArrayList,第二种则是链表的实现LinkedList。作为链表,LinkedList具有增加和删除效率高的特点,但是其也有缺点,就是无法随机访问。 下面就结合LinkedList常用的方法对该实现的源码进行分析。 1. 概括 Linked 阅读全文
posted @ 2021-06-19 17:34 龙刃已准备出鞘 阅读(39) 评论(0) 推荐(0) 编辑
摘要: ArrayList源码剖析 ArrayList是我们常用的线性表实现之一,其底层的数据结构是数组。ArrayList实现了List, RandomAccess, Cloneable, 以及Serializable接口,说明ArrayList支持List的基本操作,能随机访问,以及支持深克隆和序列化。 阅读全文
posted @ 2021-06-19 16:31 龙刃已准备出鞘 阅读(25) 评论(0) 推荐(0) 编辑
摘要: MySQL七种join详解 关系数据库的join理论 在关系型数据库中,要进行多表查询,一般都会使用join连接。join连接的本质其实类似与集合的交并操作,常见的join连接如下图。 下面先对join连接的原理进行分析,只有在理解了join的原理才能更透彻的明白这其中join的过程,以及如何mys 阅读全文
posted @ 2021-03-31 22:52 龙刃已准备出鞘 阅读(3172) 评论(0) 推荐(0) 编辑
摘要: MySQL索引详解 索引介绍 索引本质上是排好序的能快速查找的数据结构,有效的使用索引可以高效的检索数据。在MySQL官网的介绍中,在查询中的一个列或多个列上创建索引是改善查询性能的最好方法。 简单来说,索引具有的优势分为两个。一是能提高检索效率,降低数据库的I/O成本。因为索引采用了特殊的数据结构 阅读全文
posted @ 2021-03-31 22:49 龙刃已准备出鞘 阅读(64) 评论(0) 推荐(0) 编辑
摘要: Springboot自动配置原理解析<原创> 1. 简单介绍 相信许多人最开始使用Springboot之前,都经历过写SpringMVC项目时,处理各种各样配置文件的烦恼。正是因为Springboot简化了配置项目的复杂性,所以采用Springboot可以极大的方便编程人员,就像Springboot 阅读全文
posted @ 2021-01-31 00:22 龙刃已准备出鞘 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 思路:这道题很容易就想到先扫一边链表,得到链表元素总个数,然后再次遍历链表同时计数,当计数器i从1开 阅读全文
posted @ 2020-10-29 00:10 龙刃已准备出鞘 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 大数据处理技术 大数据处理是对纷繁复杂的海量数据价值的提炼,而其中最有价值的地方在于预测性分析,即可以通过数据可视化、统计模式识别、数据描述等数据挖掘形式帮助数据科学家更好的理解数据,根据数据挖掘的结果得出预测性决策。 主要环节 1.大数据采集:数据是指通过RFID射频数据、传感器数据、社交网络交互 阅读全文
posted @ 2020-10-21 20:55 龙刃已准备出鞘 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 在看java核心技术第一卷的第四章时,学习到了一个关于访问器方法可能会破坏类的封装性的情况,在以前一直没有发现这个问题。 这个情况表现如下:对于一个返回可变对象的访问器方法,外部代码可以通过调用这个可变对象的方法来修改其中的值,从而改变对象的状态,破坏了类的封装性 例如:有一个类Emploee,其中 阅读全文
posted @ 2020-08-22 23:05 龙刃已准备出鞘 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 因为科研训练的要求,需要实现wifi路由器的抓包以及监听和数据流量分析的软件,故开始学习网络编程的相关知识。首先在语言上,考虑到C++和Python在网络编程上对于我而言都差不多,故选择C++进行网络编程。 C++网络编程基本上都是通过调用Winsock里的api来对套接字进行操作,目前在学习Win 阅读全文
posted @ 2020-06-21 22:27 龙刃已准备出鞘 阅读(291) 评论(0) 推荐(0) 编辑