摘要: 1 arraylist和linkedlist源码要读; 2.collections和arrays的源码要读; 3.jvm调优要会,然后知道并发场景的解决方案,然后知道各种线程池的使用场景,例如什么时候适合高并发。以及线程拒绝策略。 4.工厂模式结合spring,然后spring源码要会。 阅读全文
posted @ 2019-07-30 09:39 成武 阅读(129) 评论(0) 推荐(0) 编辑
摘要: JMM结构图: JMM对同步的8种操作: JMM的同步规则: Countdownlatch介绍: 该类功能是可以阻塞线程,并在保证线程满足特定条件下,继续执行。如上图,Countdownlatch的cnt初始值是3,线程A调用await()方法,会阻塞,t1,t2,t3每次执行会将cnt-1,然后继 阅读全文
posted @ 2019-03-24 23:19 成武 阅读(1146) 评论(0) 推荐(0) 编辑
摘要: • 场景:– 我们要建造一个复杂的产品。比如:神州飞船,Iphone。这个复杂的产品的创建。有这样一个问题需要处理:• 装配这些子组件是不是有个步骤问题?– 实际开发中,我们所需要的对象构建时,也非常复杂,有很多步骤需要处理时。• 建造模式的本质:– 分离了对象子组件的单独构造(由Builder来负 阅读全文
posted @ 2019-03-03 22:20 成武 阅读(123) 评论(0) 推荐(0) 编辑
摘要: (.class字节码)类加载到内存之后,内存模型:(ps:.class文件可以通过javap 指令反编译成一个可读文件) 1.java栈,本地方法栈,程序计数器(每个线程私有) 看如下程序: 以该程序为例,运行该程序,jvm会分配给该程序一个线程,总体图示如下: 该线程在运行时候,java虚拟机会分 阅读全文
posted @ 2019-03-03 19:17 成武 阅读(570) 评论(0) 推荐(1) 编辑
摘要: 工厂模式 .核心本质: -实例化对象,用工厂方法代替new操作。 -将选择实现类,创建对象统一管理和控制。从而将调用者跟我们的现实类解耦。 简单工厂: 1.简单工厂模式也叫静态工厂模式,就是工厂类一般是使用静态方法, 通过接收的参数的不同来返回不同的对象实例。 2.缺点:扩展性非常的差,增加新产品必 阅读全文
posted @ 2019-02-25 22:41 成武 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 1.两种单例 a.饿汉单例,代码如下: public class Emperor { private static final Emperor emperor =new Emperor(); //初始化一个皇帝 (饿汉) private Emperor() { //世俗和道德约束你,目的就是不希望产 阅读全文
posted @ 2019-02-18 21:57 成武 阅读(122) 评论(0) 推荐(0) 编辑
摘要: java虚拟机学习-深入理解JVM(1) java虚拟机学习-慢慢琢磨JVM(2) java虚拟机学习-慢慢琢磨JVM(2-1)ClassLoader的工作机制 java虚拟机学习-JVM内存管理:深入Java内存区域与OOM(3) java虚拟机学习-JVM内存管理:深入垃圾收集器与内存分配策略( 阅读全文
posted @ 2018-06-23 10:08 成武 阅读(275) 评论(0) 推荐(0) 编辑