java机制
夜宿荒寺
这个作者很懒,什么都没留下…
展开
-
Java内存区域与内存溢出异常
Java虚拟机所管理的内存将会包括以下基本运行时数据区域:方法区(Method Area)、堆(Heap)[由所有线程共享的数据区],虚拟机栈(VM Stack)、本地方法栈(Native Method Stack)、程序计数器(Program Counter Register)[线程隔离的数据区]。1.1 程序计数器 它的作用可以看做当前线程所执行的字节码的行号指示器原创 2013-09-29 20:07:11 · 660 阅读 · 0 评论 -
垃圾收集器与内存分配策略
1对象已死?1.1引用计数算法引用计数算法:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,当引用失效时,计数器值就减1,;任何时刻计数器都为0的对象就是不可能再被使用的。Java语言中没有选用引用计数算法来管理内存,其中最主要的原因是它很难解决对象之间的相互循环引用的问题。1.2根搜索算法根搜索算法:通过一系列的名为“GC Roots”的对象作为起始点,从原创 2013-09-30 19:24:43 · 528 阅读 · 0 评论 -
虚拟机类加载机制
虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。1 类加载的时机类从被加载到虚拟机内存开始,到卸载出内存为止,它的整个生命周期包括了:加载、连接、初始化、使用、卸载。其中连接又分为验证、准备、解析三个阶段。虚拟机规范只严格规定了初始化阶段开始的时机:遇到new、getstati原创 2013-10-01 20:48:37 · 570 阅读 · 0 评论 -
HashMap与Hashtable的区别
HashMap与Hashtable的区别在面试的时候经常会有问到,下面是总结的几点不同之处,当然有几点是不太重要的:1、 继承的父类不一样:HashMapextends AbstractMap implements Map, Cloneable,SerializableHashtableextends Dictionary implements Map, Cloneable, jav原创 2013-10-02 21:31:13 · 890 阅读 · 0 评论 -
写一个标准的JDBC连接
package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JDBCTest { /** * @param a原创 2013-10-03 20:38:20 · 760 阅读 · 0 评论 -
JDBC处理Transaction
package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JDBCTest { /** * @param a原创 2013-10-05 20:03:59 · 595 阅读 · 0 评论 -
关于ThreadLocal
防止任务在共享资源上产生冲突的方式除了同步,还有一种就是根除对变量的共享。线程本地存储(ThreadLocal)是一种自动化机制,可以为使用相同变量的每个不同的线程都创建不同的存储,通过把数据放在ThreadLocal中就可以让每个线程创建一个该变量的副本,从而避免并发访问的线程安全问题。早在JDK 1.2退出之时,Java就为多线程编程提供了一个ThreadLocal类;从Java 5.0 以后原创 2013-10-06 21:20:34 · 680 阅读 · 0 评论