摘要:
我们需要的类不一定存放在已经设置好的classPath下(有系统类加载器AppClassLoader加载的路径),对于自定义路径中的class类文件的加载,我们需要自己的ClassLoader 有时我们不一定是从类文件中读取类,可能是从网络的输入流中读取类,这就需要做一些加密和解密操作,这就需要自己 阅读全文
摘要:
Synchronized的四种锁状态:无锁状态,偏向锁,轻量级锁,重量级锁 轻量级级锁的实现原理 轻量级锁的使用场景:如果一个对象虽然有多线程访问,但多线程访问的时间是错开的,也就是说没有竞争,那么完全可以用轻量级锁来优化 假设有两个方法同步块,利用同一个对象加锁 static final Obje 阅读全文
摘要:
会抛出IllegalThreadStateException() 示例代码如下: public class Main{ public static void main(String[] args){ Thread t1 = new Thread(()->{System.out.println("th 阅读全文
摘要:
乐观锁和悲观锁 悲观锁(Pessimistic Lock) 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 阅读全文
摘要:
转载于:https://blog.csdn.net/z69183787/article/details/76208998 在 SPRING 中一共定义了六种事务传播属性 PROPAGATION_REQUIRED 支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 PROPAGATIO 阅读全文
摘要:
Leetcode上原题如下: 第一种思路:哈希表 建立两个字符串中字母的映射。由于题目要求两个字符不能映射到同一个字符上,因此,建立两个哈希表,前一个哈希表的键值对和后一个哈希表的键值对刚好相反。 第二种思路:查找索引 阅读全文
摘要:
利用java.io包里的File类,可以实现对文件的操作。 现在有个需求,要求遍历一个文件夹及其子文件夹里的所有文件,并且过滤出txt格式的文件,该如何做呢? 实现方法很简单,首先是通过递归遍历文件,然后对获得的文件,判断其是不是以"txt"结尾就可以了。 代码如下: 1 public static 阅读全文
摘要:
Collection是一个接口(Interface),Collections是一个类 注意:Collections并没有实现Collection接口 Collections Collections不能被实例化,它是集合类(ArrayList,HashSet等)的一个工具类。这是因为Collectio 阅读全文
摘要:
对对象的排序,可以通过以下两种方法: Comparable接口 此接口只有一个方法 其中,T是泛型,需要指定具体的对象类型 接口中通过 x.compareTo(y)来比较x和y的大小 x<y,返回负数; x=y,返回0; x>y,返回正数; 如果obj为null,则会抛出空指针异常 实现Compar 阅读全文