Fork me on GitHub
摘要: 最近在开发中经常会用到StringUtil这个工具类,其中isEmpty 和 isBlank 是经常用到的,而且isBlank用的比较多。除了isEmpty/isNotEmpty/isNotBlank/isBlank外,还有isAnyEmpty/isNoneEmpty/isAnyBlank/isNo 阅读全文
posted @ 2021-08-22 17:45 kelexin 阅读(334) 评论(0) 推荐(0) 编辑
摘要: https://mp.weixin.qq.com/s/GN-Z14rjAo6i-JOH2rb1PA 阅读全文
posted @ 2021-06-15 15:15 kelexin 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 之前有学习了JVM: 但是内容比较多,面试经常会问JVM的内存结构,所以今天整理一下。 ##java8内存结构图 ##虚拟机内存与本地内存的区别 Java虚拟机在执行的时候会把管理的内存分配成不同的区域,这些区域被称为虚拟机内存, 同时,对于虚拟机没有直接管理的物理内存,也有一定的利用,这些被利用却 阅读全文
posted @ 2021-03-22 09:20 kelexin 阅读(1928) 评论(2) 推荐(0) 编辑
摘要: 线程交替打印的题经常出现,总结一下: ###一、两个线程交替打印0~100的奇偶数 /* * 1.wait和notify都是Object类的方法。 * 2.wait和notify必须要在synchronized代码块中执行,否则会抛异常。 */ public class WaitNotifyPrin 阅读全文
posted @ 2021-03-16 10:26 kelexin 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 作用 修饰类:表示类不可被继承 修饰方法:表示方法不可被子类覆盖,但是可以重载 修饰变量:表示变量一旦被赋值就不可以更改它的值。 (1)修饰成员变量 如果final修饰的是类变量,只能在静态初始化块中指定初始值或者声明该类变量时指定初始值。 如果final修饰的是成员变量,可以在非静态初始化块、声明 阅读全文
posted @ 2021-03-03 10:25 kelexin 阅读(684) 评论(0) 推荐(0) 编辑
摘要: 一、概述 在执行一个异步任务或并发任务时,往往是通过直接new Thread()方法来创建新的线程,这样做弊端较多,更好的解决方案是合理地利用线程池,线程池的优势很明显,如下: 阅读全文
posted @ 2021-02-27 14:55 kelexin 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 设计模式是面试经常问的,面试官甚至会要你实现,所以要很熟悉,故整理下来 详细解说可以看这个视频:https://www.bilibili.com/video/BV1Eb411P7bP?p=2 ##什么是Singleton? Singleton:在Java中 即指单例设置模式,他是软件开发最常用的设置 阅读全文
posted @ 2021-02-22 22:20 kelexin 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 目录 前言 SELECT语句 - 语法顺序: SELECT语句 - 执行顺序: SQL优化策略 一、避免不走索引的场景 二、SELECT语句其他优化 三、增删改 DML 语句优化 四、查询条件优化 五、建表优化 阅读全文
posted @ 2021-02-20 11:35 kelexin 阅读(625) 评论(0) 推荐(0) 编辑
摘要: 我是看这个教程学的:https://www.bilibili.com/video/BV1x4411V75C?p=19 以下是学习笔记 因为在博客园用markdown写html代码容易显示混乱,所以把笔记写到这:https://www.jianshu.com/p/9fab45d9395d 阅读全文
posted @ 2021-02-15 23:10 kelexin 阅读(58) 评论(0) 推荐(0) 编辑
摘要: LRU 算法,全称是Least Recently Used。 翻译过来就是最近最少使用算法。 这个算法的思想就是:如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小。所以,当指定的空间已存满数据时,应当把最久没有被访问到的数据淘汰。 阅读全文
posted @ 2021-02-09 15:58 kelexin 阅读(84) 评论(0) 推荐(0) 编辑