徐盛的博客

起今知行


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

  • 公益404

深入理解Java虚拟机(五)

发表于 2017-01-07 | 分类于 Java虚拟机

前言

  我们已经了解了Class文件存储格式的具体细节,在Class文件中描述的各种信息,最终都需要加载到虚拟机中之后才能被运行和使用。而虚拟机如何加载这些Class文件?这些信息进入到虚拟机后会发生什么变化?。这是我们接下来要学习的内容。

阅读全文 »

深入理解Java虚拟机(四)

发表于 2017-01-06 | 分类于 Java虚拟机

前言

       以前计算机程序课上老师总说:计算机只认识0和1,写的程序都会编译成为0和1组成的二进制格式才能被计算机执行。然而10多年的时间过去了,今天的计算机仍然只能识别0和1,但是建立在虚拟机之上的大量程序语言发展迅速,将2我们编写的程序编译成二进制本地机器码(native code)已不再是唯一的选择,越来越多的程序语言选择了与操作系统和机器指令无关平台中立的格式作为程序编译之后的存储格式。这也是Java这类语言,平台无关性的基石。而且虚拟机上更有语言无关性的趋势。

阅读全文 »

深入理解Java虚拟机(三)

发表于 2017-01-05 | 分类于 Java虚拟机

前言

       在了解了Java运行时内存区域之后,我们知道虚拟机可能造成内存溢出OOM,虽然有垃圾回收机制,但是可能也不能避免,我们现在就看看Java的垃圾收集机制为例避免内存溢出异常已经做出了哪些努力。

阅读全文 »

深入理解Java虚拟机(二)

发表于 2017-01-04 | 分类于 Java虚拟机

对象访问

本章主要内容

  • 对象访问

在Java中,对象访问是如何进行的?

  对象访问在Java中无处不在,是最普通的程序行为,但是最简单的访问也会涉及 Java栈、Java堆、方法区这三个最重要的内存区域之间的关联关系。如:

1
Object obj = new Object();
阅读全文 »

深入学习JAVA虚拟机(一)

发表于 2017-01-03 | 分类于 Java虚拟机

java内存区域与内存溢出异常


本章主要内容

  • 运行时数据区域

运行时数据区域

Java虚拟机在执行Java程序的过程中会把他所管理的内存划分成若干不同的数据区域。

  这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。

阅读全文 »

算法基础篇:排序(二)

发表于 2016-12-06 | 分类于 算法

改进排序算法及其Java实现

前言

       上节讲了经典的三个排序算法,这节将对改进的排序算法进行分析,有快速排序和归并排序。对于排序和数据结构,推荐一个很棒的网站,支持能动态的看排序过程,可以单步,调节快慢:学习利器

阅读全文 »

算法总结-排序(一)

发表于 2016-12-01 | 分类于 算法

前言

       看完了牛客网上的买的算法课程,准备首先从基础的数据结构和算法开始写。

       本篇先从基础的排序开始,需要要掌握的有冒泡排序,选择排序和 插入排序。

阅读全文 »

mybatis整理笔记(十六)

发表于 2016-11-09 | 分类于 mybatis

前言

本文主要讲mybatis的二级缓存,二级缓存是mapper级别的缓存,多个SqlSession去操作同一个Mapper的sql语句,多个SqlSession可以共用二级缓存,二级缓存是跨SqlSession的。

阅读全文 »

mybatis整理笔记(十五)

发表于 2016-11-09 | 分类于 mybatis

前言

本文主要讲mybatis的一级缓存,一级缓存是SqlSession级别的缓存。

阅读全文 »

mybatis整理笔记(十四)

发表于 2016-11-09 | 分类于 mybatis

前言

延迟加载:先从单表查询、需要时再从关联表去关联查询,大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。

阅读全文 »
1…345…7
徐盛

徐盛

专注技术。

62 日志
15 分类
41 标签
RSS
© 2016 - 2017 徐盛
由 Hexo 强力驱动
主题 - NexT.Mist