java

java分代回收

一、新生代内存的回收(minor GC)主要采用复制算法,下图展示了minor GC的执行过程。 二、对于新生代和旧生代,JVM可使用很多种垃圾回收器进行垃圾回收,下图展示了不同生代不通垃圾回收器,其中两个回收器之间有连线表示这两个回收器可以同时使用。 而这些垃圾回收器又分为串行回收方式、并行回收方式合并发回收方式执行,分别运用于不同的场景。如下图所示 三、收集器 1.Serial收集器 看名字我...

2017-04-09 178浏览 评论

java

垃圾回收算法

垃圾回收算法 1、标记-清除算法 2、复制算法 3、标记-整理算法 一、标记-清除算法 标记-清除算法采用从根集合进行扫描,对存活的对象对象标记,标记完毕后,再扫描整个空间中未被标记的对象,进行回收,如上图所示。 标记-清除算法不需要进行对象的移动,并且仅对不存活的对象进行处理,在存活对象比较多的情况下极为高效,但由于标记-清除算法直接回收不存活的对象,因此会造成内存碎片! 二、复制算法 复制算法...

2017-04-09 178浏览 评论

java

重载与重写

目前的问题:父类的功能无法满足子类的需求。 方法重写的前提: 必须要存在继承的关系。 方法的重写: 子父类出了同名的函数,这个我们就称作为方法的重写。 什么是时候要使用方法的重写:父类的功能无法满足子类的需求时。 方法重写要注意的事项: 1.方法重写时, 方法名与形参列表必须一致。 2.方法重写时,子类的权限修饰符必须要大于或者等于父类的权限修饰符。 3.方法重写时,子类的返回值类型必须要小于或者...

2017-03-21 127浏览 评论

java

2017-03-14学习笔记

1.Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。 (1)加载:容器通过类加载器使用servlet类对应的文件加载servlet (2)创建:通过调用servlet构造函数创建一个servlet对象 (3)初始化:调用init方法初始化 (4)处理客户请求:每当有一个客户请求,容器会创建一个线程来处理客户请求 (5)卸载:调用destroy方法让servlet自己释...

2017-03-14 152浏览 评论

java

2017-03-12学习笔记

1.继承的加载顺序 执行顺序大体上可以说是先父类后子类,父类static域 ==》子类static域 ==》父类数据成员域 ==》父类构造器 ==》子类数据成员域 ==》子类构造器 2.优化Hibernate所鼓励的7大措施: 1.尽量使用many-to-one,避免使用单项one-to-many 2.灵活使用单向one-to-many 3.不用一对一,使用多对一代替一对一 4.配置对象缓存,不使...

2017-03-12 182浏览 评论

java

2017-03-10学习笔记

1.Integer和int,装箱拆箱 1、基本型和基本型封装型进行“==”运算符的比较,基本型封装型将会自动拆箱变为基本型后再进行比较,因此Integer(0)会自动拆箱为int类型再进行比较,显然返回true; 2、两个Integer类型进行“==”比较,如果其值在-128至127,那么返回true,否则返回false, 这跟Integer.valueOf()的缓冲对象有关,这里不进行赘述。 3...

2017-03-10 199浏览 评论

java

java归并排序

package datastruct; /** * Created by Zephery on 2017/3/3. */ public class Solution { public static void printArray(int[] arr, int i, int j) { System.out.print("["); for...

2017-03-06 196浏览 评论

java

2017-03-03学习笔记

一、String StringBuffer.toString()源码: @Override public synchronized String toString() { if (toStringCache == null) { toStringCache = Arrays.copyOfRange(value, 0, count); } retur...

2017-03-03 194浏览 评论

java

2017-03-02学习笔记

知识点 一、static public class Spike { public static void main(String[] args) { Counter a = new Counter(); System.out.println(a.increment()); System.out.println(a.anot...

2017-03-02 194浏览 评论

java

2017-03-01学习笔记

知识点 1.java中只有值传递,没有引用传递http://guhanjie.iteye.com/blog/1683637 2.final关键字 final修饰变量,则等同于常量. final修饰方法中的参数,称为最终参数. final修饰类,则类不能被继承. final修饰方法,则方法不能被...

2017-03-01 208浏览 评论