摘要: 一、javac 1. 编译.java文件,生成字节码文件 2. 例子:javac a.java,在当前路径下生成a.class文件 3. 可以用-d参数指定生成文件的路径 二、java 1. 执行.class的字节码文件 2. 命令: java a.class java -jar a.jar 三、j 阅读全文
posted @ 2019-11-03 17:28 牧云文仔 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 一、斐波那契数列 斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368...... 二、递归算法 1. 代码 2. 阅读全文
posted @ 2019-11-03 16:00 牧云文仔 阅读(1869) 评论(0) 推荐(0) 编辑
摘要: 一、概述 1. JDK1.2引入Java集合框架,这些数据结构的存储空间会动态增减 2. 在java.util包里 二、分类 1. 接口:Collection, List, Map, Set, SortedMap 2. 实现:LinkedList, ArrayList, HashMap 3. 算法: 阅读全文
posted @ 2019-11-03 15:15 牧云文仔 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 一、计算机内存模型 1. CPU的高速缓存: a. 由于CPU的速度远远大于IO速度和主存速度,所以CPU加了一层高速缓存,把主存的数据加载到高速缓存 b. CPU高速缓存为某个CPU独有,只与运行在该CPU的线程有关 2. 缓存一致性问题: a. 当一个在主存里的变量被多个线程访问,成为共享变量, 阅读全文
posted @ 2019-11-03 13:49 牧云文仔 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 一、乐观锁: 1. 总是假设最好的情况,进行业务操作的时候不加锁 2. 只有在更新操作时,才回去判断数据是否被别的线程更新过 3. 适合读操作比较多的场景,提高系统吞吐量;写操作比较多的场景会降低性能 4. 实现方式 a. 版本号或者时间戳:表里多加一列作为标记,先读取标记,更新的时候也更新标记,如 阅读全文
posted @ 2019-11-03 10:45 牧云文仔 阅读(109) 评论(0) 推荐(0) 编辑