java
DQing
这个作者很懒,什么都没留下…
展开
-
《深入理解JAVA虚拟机》——JVM运行时数据区域
JAVA在运行的时候,将管理的内存划分为不同的数据区域。如图:程序计数器:一块较小的内存空间,作为当前线程所执行的字节码的行号指示器。字节码指示器就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。每个线程都有一个独立的程序计数器,各线程之间的计数器互不影响,独立存储,这类内存区域为“线程私有”内存。JVM栈JVM栈与程序计数器一样,也是线程原创 2013-05-23 00:15:38 · 852 阅读 · 0 评论 -
《深入理解Java虚拟机》——垃圾回收与内存分配
本文内容来自对《深入理解Java虚拟机》的学习,主要是对java垃圾回收的一些知识的记录。一、垃圾回收1.1 对象判断对象的判定主要通过引用来实现的,主要算法有引用计数算法、根搜索算法。1.1.1 引用jdk1.2之前,Java中的引用定义:如果Reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。Jdk1.2之后,原创 2013-05-26 01:58:22 · 658 阅读 · 0 评论 -
一道面试题的思考
前两天,去看见一个面试题目,如下: 不使用中间变量的情况下,怎么直接实现两个数的互换?最容易想好的方法就是使用中间变量public static void swap(int x,int y){ int temp = x; x = y; y = temp; System.out.println(x+""+y);}但题目原创 2013-10-14 01:01:40 · 571 阅读 · 0 评论 -
Java基础——变量
java类的成员变量有两种:一种是被static关键字修饰的变量,叫类变量或者静态变量;另一种没有static修饰,为实例变量。在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变原创 2013-11-04 17:35:50 · 549 阅读 · 0 评论 -
Java基础——多线程
进程与线程 进程就是程序的一次执行,而线程可以理解为进程中的执行的一段程序片段。每个进程都有独立的代码和数据空间(进程上下文);而线程可以看成是轻量级的进程。一般来讲(不使用特殊技术),同一进程所产生的线程共享同一块内存空间。 同一进程中的两段代码是不可能同时执行的,除非引入线程(实际也非同时执行,但表面上有同时执行的效果)。 多线程情况下,多原创 2013-11-06 16:58:43 · 661 阅读 · 0 评论 -
java——reference类型和Primitive类型
本文产生于自己在对object reference操作后的预期结果的错误。开始之前,先简单说说reference(引用)类型和 primitive(基本)类型。 Java 提供了截然不同的型别:reference(引用)类型和 primitive(基本)类型,后者又称为 built-in(内置)类型。每一种 primitive(基本)类型分别拥有相应的外覆类原创 2013-12-17 00:59:37 · 4136 阅读 · 1 评论 -
java基础之IO
四种抽象流类 字节流字符流输入流InputStreamReader输出流OutputStreamWriter原创 2014-04-15 01:43:25 · 512 阅读 · 1 评论