上一页 1 ··· 4 5 6 7 8 9 10 11 12 下一页
摘要: 1. 垃圾回收的意义 在C++中,对象所占的内存在程序结束运行之前一直被占用,在明确释放之前不能分配给其它对象;而在Java中,当没有对象引用指向原先分配给某个对象的内存时,该内存便成为垃圾。JVM的一个系统级线程会自动释放该内存块。垃圾回收意味着程序不再需要的对象是"无用信息",这些信息将被丢弃。 阅读全文
posted @ 2016-09-27 01:25 DearBelinda 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 对象引用 Java 中的垃圾回收一般是在 Java 堆中进行,因为堆中几乎存放了 Java 中所有的对象实例。谈到 Java 堆中的垃圾回收,自然要谈到引用。在 JDK1.2 之前,Java 中的引用定义很很纯粹:如果 reference 类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这 阅读全文
posted @ 2016-09-27 00:00 DearBelinda 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 编译过程 不论是物理机还是虚拟机,大部分的程序代码从开始编译到最终转化成物理机的目标代码或虚拟机能执行的指令集之前,都会按照如下图所示的各个步骤进行: 其中绿色的模块可以选择性实现。很容易看出,上图中间的那条分支是解释执行的过程(即一条字节码一条字节码地解释执行,如 JavaScript),而下面的 阅读全文
posted @ 2016-09-26 23:10 DearBelinda 阅读(1005) 评论(0) 推荐(0) 编辑
摘要: 通常,在WEB系统中,上传文件时都需要做文件的类型校验,大致有如下几种方法: 1. 通过后缀名,如exe,jpg,bmp,rar,zip等等。 2. 通过读取文件,获取文件的Content-type来判断。 3. 通过读取文件流,根据文件流中特定的一些字节标识来区分不同类型的文件。 4. 若是图片, 阅读全文
posted @ 2016-09-26 09:11 DearBelinda 阅读(12388) 评论(0) 推荐(0) 编辑
摘要: 方法解析 Class 文件的编译过程中不包含传统编译中的连接步骤,一切方法调用在 Class 文件里面存储的都只是符号引用,而不是方法在实际运行时内存布局中的入口地址。这个特性给 Java 带来了更强大的动态扩展能力,使得可以在类运行期间才能确定某些目标方法的直接引用,称为动态连接,也有一部分方法的 阅读全文
posted @ 2016-09-25 05:28 DearBelinda 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 类加载过程 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示: 其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,而解析 阅读全文
posted @ 2016-09-25 03:28 DearBelinda 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 内存区域 Java 虚拟机在执行 Java 程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java 虚拟机规范将 JVM 所管理的内存分为以下几个运行时数据区:程序计数器、Java 虚拟机栈、本地方法栈、Java 堆、方法区。下面详细阐述各数据区所存储的数据类型。 程序计数器 一块较小的 阅读全文
posted @ 2016-09-23 14:59 DearBelinda 阅读(171) 评论(0) 推荐(0) 编辑
摘要: Java 代码编译是由 Java 源码编译器来完成,流程图如下所示: Java 字节码的执行是由 JVM 执行引擎来完成,流程图如下所示: Java 代码编译和执行的整个过程包含了以下三个重要的机制: Java 源码编译机制 类加载机制 类执行机制 Java 源码编译机制 Java 源码编译由以下三 阅读全文
posted @ 2016-09-23 14:58 DearBelinda 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 一、介绍 浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工作原理,我们将看到,从你在地址栏输入google.com到你看到google主页过程中都发生了什么。 将讨论的浏览器 今天,有五种主流浏览器——IE、Firefox、Safari、Chrome及Opera。 本文将基于一些开源浏览器的 阅读全文
posted @ 2016-09-22 17:16 DearBelinda 阅读(348) 评论(0) 推荐(0) 编辑
摘要: Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。 1、关于Class 1、Class是一个类,一个描述类的类(也就是描述类本身),封装了描述 阅读全文
posted @ 2016-09-22 15:27 DearBelinda 阅读(27518) 评论(3) 推荐(7) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 下一页