- 博客(5)
- 资源 (18)
- 收藏
- 关注
原创 JVM学习笔记(二)JVM判断对象是否”存活”
在堆里面存放着JAVA的对象实例,垃圾收集器在对象进行回收之前,第一件事情要确定的是这些对象哪些还“存活”着,哪些已经“死去”。 1、引用计数算法 思路:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器就加1;引用失效时,计数器值就减1。计数器为0的对象就是不可能再被引用的。 优点:实现简单,判定效率也很高。 缺点:对于循环引用的对象,它们的计
2016-12-29 18:33:46 361
原创 JVM学习笔记(一)JVM运行时数据区域解析
JAVA虚拟机在执行JAVA程序的过程中,会把它所管理的内存划分成若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间。JVM所管理的内存将包括以下几个运行时数据区域,如下图所示: 注:蓝色部分(方法区和堆)是所有线程共享的数据区。白色部分(虚拟机栈、本地方法栈、程序计数器)是线程隔离的数据区。 1、程序计数器 程序计数器(Program
2016-12-29 17:07:06 410
原创 设计模式(九)模板方法模式
定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模式使得子类可以在不改变一个算法的结构即可重新定义该算法的某些特定步骤。 结构: 模板抽象类:在抽象类中定义了一系列基本操作,这些基本操作可以是具体的,也可以是抽象的。其子类可以重定义或实现这些基本操作。同时,抽象类中实现了一个模板方法,用于定义一个算法的框架。模板方法可以调用抽象类中的基本方法。模板方法
2016-12-22 17:51:10 463
原创 设计模式(八)观察者模式
定义:又称发布/订阅模式,观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。 使用场景: 当一个对象的改变需要通知其他对象时,且不知道有多少个对象需要等待改变。 结构: 抽象主题角色:把所有观察者对象的引用保存在一个集合中,每个抽象主题
2016-12-22 14:52:05 379
原创 设计模式(七)代理模式
定义:为其他对象提供一种代理(中介),以控制这个对象的访问。对这个对象进行访问控制的一个原因是为了只有我们确实需要这个对象时才对它进行创建和初始化。 使用场景: 1、延迟加载。如果一个对象并不是在任何场景都需要,且这个对象的创建需要消耗不少资源。 2、对原有对象方法的增强。这些加强可能是一些日志操作,基于设计模式开闭原则的考虑,这些加强不可能放到原有真实类里面,所以就新增了一个代
2016-12-22 10:44:27 476
java服务端后台常用模板(Spring Data JPA、Hibernate、 Spring MVC、Layer)
2017-02-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人