juc 中断信号的部分理解
随手录,后面慢慢集中整理,有点碎片化 终止线程的运行:多种办法。 通过可见的volite 变量 来 更改状态,根据变量的状态来根据逻辑从而退出线程 通过interrupt 来改变线程的中断状态,同理也可以去通过获取当前线程的中断状态,抛出异常或者正常退出 如果线程在sleep 或者 wait 状态,
数据库
未读
#{} 于 ${} 的区别
我们讨论的占位符通常出现在MyBatis这样的持久层框架中。在MyBatis中,有两种常见的占位符:#{}和${}。它们有本质的区别,特别是在安全方面。 1. #{}(井号占位符) 原理:使用#{}时,MyBatis会创建预编译语句(PreparedStatement),并将参数安全地设置到SQL中
Java中数组和集合的排序与逆序操作
Java提供了多种方式对数组和集合进行排序和逆序操作。下面我将介绍常用的API操作。 数组排序 1. 基本类型数组排序 int[] intArray = {5, 2, 9, 1, 5};
// 升序排序
Arrays.sort(intArray); // [1, 2, 5, 5, 9]
// 降
后端
未读
浅拷贝与深拷贝的区别
浅拷贝: 首先会创建一个对象,然后如果对象中包含引用,只会是引用拷贝,并不会复制引用实际指向的对象,也就是说源对象和新对象指向的引用是同一个地址,任何一个修改都会影响的 深拷贝 首先也是会创建一个对象,除了复制对象的引用外,还会去递归的创建引用所指向的实际对象,在堆中会去重新拷贝一个新的对象的。双方