自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (5)
  • 收藏
  • 关注

原创 0050-垃圾回收器

文章目录1. 基础定义1.1 按线程数分1.2 按工作模式分1.3 性能指标2. 垃圾回收器概述3. Serial-串行回收器3.1 Serial3.2 Serial Old4. ParNew-并行回收器5. Parallel-吞吐量优先回收器5.1 Parallel Scavenge5.2 Parallel Old6. CMS-低延迟回收器7. G1-区域化分代式回收器8. GC总结9. GC日志分析1. 基础定义1.1 按线程数分按线程数分,垃圾回收器可以分为串行或者并行(指的是垃圾回收的线程)

2020-06-29 15:31:04 2109

原创 0040-垃圾收集算法

文章目录1. 前言2. 标记算法2.1 引用计数算法2.2 可达性分析算法3. 对象的finalization机制4. 垃圾清除阶段算法4.1 标记-清除(Mark-Sweep)4.2 复制算法(Copying)4.3 标记-压缩算法(Mark-Compact)4.4 三种算法的比较5. 分代收集算法6. 补充算法6.1 增量收集算法6.2 分区算法1. 前言垃圾回收分为两个阶段,首先确认哪些对象是垃圾——标记阶段,其次是垃圾确认以后的回收——回收阶段2. 标记算法2.1 引用计数算法1. 简述

2020-06-29 15:28:35 2090

原创 0036-StringTable

文章目录1. String的基本特性2. String的内存分配3. String的基本操作4. 字符串拼接操作5. intern()的使用1. String的基本特性String的基本特性1. String字符串的定义方式 String s1 = "atguigu";// 字面量定义方式 String s2 = new String("hello"); 2. String声明为final的,不可被继承3. String实现了Serializable接口:表示字符串是支持

2020-06-03 16:15:14 2244

原创 0035-对象实例化步骤,内存布局,访问定位

文章目录1. 实例化步骤2. 内存布局3. 对象访问定位1. 实例化步骤对象创建的方式1. new2. Class的newInstance()3. Contructor的newInstance(xxx)4. 使用clone5. 使用反序列化6. 第三方库Objenesis对象的创建步骤1. 判断对象对应的类是否加载,链接,初始化,没有加载,使用双亲委派机制加载类2. 为对象分配内存 不同的垃圾收集器会导致,内存规整或不规整,不同的内存结构,会有不同的分配方

2020-06-03 16:14:35 2129

原创 0034-方法区

文章目录1. 栈、堆、方法区的交互关系2. 方法区的理解3. 方法区的演进4. 设置方法区大小5. 方法区的内部结构5.1 类型信息5.2 域(Field)信息5.3 方法(Method)信息5.4 类变量5.5 运行时常量池 & 常量池6. 方法区的演进细节7. 方法区的垃圾回收1. 栈、堆、方法区的交互关系线程共享的角度1. 线程共享区域:堆和方法区,两者都会有OutOfMemoryError和GC2. 线程独占区域:虚拟机栈,本地方法栈,程序计数器,两个栈会出现StackOve

2020-06-03 16:14:03 2368

原创 0033-堆

文章目录1. 简述2. 堆空间的设置3. 年轻代与老年代4. 对象的分配过程5. Minor GC/ Major GC/ Full GC6. 堆空间分代思想7. 对象提升规则8. TLAB(Thread Local Allocation Buffer)9. 常用参数总结10. 堆是分配对象的唯一选择吗1. 简述1. 堆是jvm管理的一块最大内存空间,且一个jvm只存在一个堆内存2. 堆空间被所有的线程共享,同时也可以划分线程私有的缓冲区(Thread Local Allocation Buffer,

2020-06-03 16:13:10 2058

原创 0032-虚拟机栈

文章目录1 简介2 栈配置3 栈帧3.1 局部变量表(local variables)3.2 操作数栈(Operand Stack)3.3 动态链接(Dynamic Linking)3.4 方法返回地址(Return Address)3.5 一些附加信息4. 栈的相关面试题1 简介java虚拟机栈,早期也称为java栈,每个线程在创建时,都会创建一个虚拟机栈,其内部包含一个个栈帧(Stack Frame),对应一次次的方法调用,虚拟机栈是线程私有的,没有GC,有可能会出现StackOverFlowErr

2020-06-03 16:12:30 2248

原创 0031-程序计数器

文章目录1 简介2 作用3 举例4 常见问题1 简介1. 存储空间很小的内存空间,运行速度最快的存储区域2. 程序计数器是线程私有的,生命周期与线程的生命周期一致3. 任何一个线程同一个时间节点都只有一个方法执行,这个方法称为当前方法,程序计数器会存储当前正在执行java方法的jvm指令地址,如果是native方法,则是未指定值(undefined)4. 它是唯一一个在java虚拟机中没有规定任何OutOfMemoryError的情况2 作用程序计数器会存储当前正在执行java方法的

2020-06-03 16:02:33 2166

原创 0030-内存概述

文章目录概览图1. 内存角色1.1 方法区1.2 堆区1.3 虚拟机栈1.4 程序计数器1.5 本地方法栈2. 线程共享性概览图1. 内存角色内存中主要涉及到的角色有方法区,堆,虚拟机栈,程序计数器,本地方法栈1.1 方法区方法区主要存储加载的class类元数据,包括类型信息,运行时常量池(不包含字符串常量),域信息,方法信息等1.2 堆区堆区又分为新生代和老年代,新生代又分为Eden,s0,s1区,是垃圾回收的重点区域,主要存储new出来的对象,还有几个特殊的对象,Class对象及内部的

2020-06-03 16:01:47 2104

原创 0020-类的加载

文章目录1. 内存结构概述2. 类的加载过程2.1 类加载器的作用2.2 类加载器角色2.3 类的加载过程1. 加载2. 链接3. 初始化3. 类加载器的分类3.1 引导类加载器(Bootstrap ClassLoader)3.2 自定义类加载器(User-Defined ClassLoader)3.2.1 扩展类加载器(Extention ClassLoader)3.2.2 应用程序类加载器(Application ClassLoader)3.2.3 自定义加载器4. ClassLoader的使用说明5.

2020-06-03 16:01:02 2075

percona.zip

percona toolkit离线安装包,包括DBI、DBD和percona toolkit,已经安装过程中遇到的一些问题

2020-11-02

100个word简历模板.zip

100个word简历模板,包含各行各业,可以支持编辑,快速制作自己的简历,作者呕心沥血整理,欢迎下载,愿各位都能找到心仪的工作。

2020-03-29

近百个微信小程序模板(含源码)

微信小程序模板文件,包含源码,仅供学习使用,下载可以直接导入使用,部分数据需要在小程序管理页面配置request地址。

2019-01-24

FastStone Capture

一款好用的截图软件,之间简单的截图,最棒的地方是支持电脑截长图。

2018-05-11

微信公众号加密解密包

用法详见我的博客 微信公众号开发-0010 接入微信公众平台

2018-05-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除