摘要: 1、性能比较:StringBuilder > StringBuffer > String 2、String <(StringBuffer,StringBuilder)的原因 String:字符串常量 StringBuffer:字符串变量 StringBuilder:字符串变量 3、源码分析 Stri 阅读全文
posted @ 2017-01-12 14:13 ZZELLIOTT 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 一、java内存管理及垃圾回收 jvm内存组成结构 jvm栈由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示: (1)堆 所有通过new创建的对象的内存都在堆中分配,堆的大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分成Eden区和Survivor区,最后S 阅读全文
posted @ 2017-01-12 13:53 ZZELLIOTT 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 1.类的加载过程 JVM将类加载过程分为三个步骤:装载(Load),链接(Link)和初始化(Initialize)链接又分为三个步骤,如下图所示: 1) 装载:查找并加载类的二进制数据。 2)链接: 验证:确保被加载类的正确性。 准备:为类的静态变量分配内存,并将其初始化为默认值。 解析:把类中的 阅读全文
posted @ 2017-01-12 11:30 ZZELLIOTT 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括: Java线程具有五中基本状态 新建状态(New):当线程对象对创建后,即进入了新建 阅读全文
posted @ 2017-01-12 11:26 ZZELLIOTT 阅读(110) 评论(0) 推荐(0) 编辑