VM基本是BAT面试必考的内容,今天我们先从JVM内存模型开启详解整个JVM系列,希望看完整个系列后,可以轻松通过BAT关于JVM的考核。 BAT必考JVM系列专题 1.JVM内存模型 2.JVM垃圾回收算法 3.JVM垃圾回收器 4.JVM参数详解 5.JVM性能调优 JVM内存结构 由上图可以清 ...
分类:
其他好文 时间:
2019-12-23 00:36:07
阅读次数:
79
垃圾回收算法 1.标记清除 标记-清除算法将垃圾回收分为两个阶段:标记阶段和清除阶段。 在标记阶段首先通过根节点(GC Roots),标记所有从根节点开始的对象,未被标记的对象就是未被引用的垃圾对象。然后,在清除阶段,清除所有未被标记的对象。 适用场合: 存活对象较多的情况下比较高效 适用于年老代( ...
分类:
编程语言 时间:
2019-12-23 00:31:31
阅读次数:
83
图解JVM垃圾内存回收算法 这篇文章主要介绍了图解JVM垃圾内存回收算法,由于年轻代堆空间的垃圾回收会很频繁,因此其垃圾回收算法会更加重视回收效率,下面博主和大家来一起学习一下吧 前言 首先,我们要讲的是JVM的垃圾回收机制,我默认准备阅读本篇的人都知道以下两点: JVM是做什么的 Java堆是什么 ...
分类:
编程语言 时间:
2019-12-22 16:29:12
阅读次数:
71
起因是因为想了解闭包的内存泄露机制,然后想起《js高级程序设计》中有关于垃圾回收机制的解析,之前没有很懂,过一年回头再看就懂了,写篇博客与大家分享一下。 #内存的生命周期: 分配你所需要的内存: 由于字符串、对象等没有固定的大小,js程序在每次创建字符串、对象的时候,程序都会分配内存来存储那个实体。 ...
分类:
Web程序 时间:
2019-12-22 14:34:05
阅读次数:
101
Spring创建bean的三种方式 1.第一种方式:使用默认构造函数创建 bean.xml AccountServiceImpl.java 测试:AccountTest.java 输出结果: 2.第二种方式:使用普通工厂中的方法创建对象(使用某个类中的方法创建对象,并存入spring容器) bean ...
分类:
编程语言 时间:
2019-12-21 23:03:40
阅读次数:
166
基础常识基础常识 软件 即一系列按照特定顺序组织计算机数据和指令的集合 分为 系统软件 和应用软件 系统软件 : windows mac os linux unix android ios.. 应用软件 word ppt 画图板 人机交互:图形化界面 vs 命令行方式 常用的DOS命令: dir 列 ...
分类:
编程语言 时间:
2019-12-21 00:29:48
阅读次数:
85
闭包的实现原理和作用 闭包: 有权访问另一个函数作用域中的变量的函数。 创建闭包的常见方式就是,在一个函数中创建另一个函数。 闭包的作用: 访问函数内部变量、保持函数在环境中一直存在,不会被垃圾回收机制处理 因为函数内部声明 的变量是局部的,只能在函数内部访问到,但是函数外部的变量是对函数内部可见的 ...
分类:
编程语言 时间:
2019-12-20 12:06:06
阅读次数:
122
什么闭包? 有权访问另一个函数作用域中的变量的函数。 具体化:外部函数调用之后其变量对象本应该被销毁,但闭包的存在使我们仍然可以访问外部函数的变量对象。 个人理解: 我觉得《你不知道的JavaScript》中对闭包的描述比较确切:当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前 ...
分类:
Web程序 时间:
2019-12-19 23:22:16
阅读次数:
105
1.1 如何确定垃圾 1.1.1 引用计数法 在Java中,引用和对象是有关联的。如果要操作对象则必须用引用进行。因此,很显然一个简单的办法是通过引用计数来判断一个对象是否可以回收。简单说,即一个对象如果没有任何与之关联的引用,即他们的引用计数都不为0,则说明对象不太可能再被用到,那么这个对象就是可 ...
分类:
编程语言 时间:
2019-12-19 23:11:55
阅读次数:
78
线程池为什么要有它: 线程创建要开辟虚拟机栈,释放线程要垃圾回收的。 server端要并发访问数据库的。 服务器启动有线程池放着。 线程池的概念: 1.任务队列 2.拒绝策略(抛出异常,直接丢弃,阻塞,放在临时队列) 3.初始化值init(min),初始线程池大小 3.active 5.max线程池 ...
分类:
编程语言 时间:
2019-12-19 12:56:46
阅读次数:
67