深入java虚拟机
ygl6150373
这个作者很懒,什么都没留下…
展开
-
深入java虚拟机(二)
加载:从class文件将二进制数据加载至内存生成Class对象.(实现由class文件从硬盘到内存迁移,注意此时还没有任何对象生成也即不存在实例变量) 连接:为静态变量分配内存,初始化默认值 初始化:为类的静态变量赋予正确初始值.原创 2016-01-04 22:52:42 · 220 阅读 · 0 评论 -
深入java虚拟机(一)
package com.ygl; class SingleTon{ private static SingleTon singleTon=new SingleTon(); public static int counter1; public static int counter2=0; public SingleTon(){ counter1++; counter2++;原创 2016-01-04 22:37:18 · 220 阅读 · 0 评论 -
深入理解java虚拟机(三)(一个类加载器只初始化一次类对象,不同类加载器可以对同一类对象进行初始化)
package com.ygl; class Final{ public static final int x=6/3;//此处x在编译时能计算出值,是编译时的常量,则System.out.println(Final.x);直接输出值,不再执行下面static static{ System.out.println("Final "); } } public class Test2 {原创 2016-01-05 21:35:08 · 1281 阅读 · 0 评论 -
深入java虚拟机(四)
package com.ygl; class CL { //静态代码块可以简单理解为初始化一些值 static { System.out.println("Class CL"); } } public class Test7 { public static void main(String[] args) { //获得系统类加载器 ClassLoader loader=Clas原创 2016-01-05 22:46:01 · 266 阅读 · 0 评论 -
深入理解java虚拟机(五)
1.各个文件里存放有不同编译好的class 2. import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; public class MyClassLoader extends C原创 2016-01-08 22:47:50 · 202 阅读 · 0 评论 -
反射获取对象属性
import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.lang.reflect.Field; public class MyClassLoader extends Class原创 2016-01-09 14:21:19 · 221 阅读 · 0 评论 -
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解
JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 内存泄露转载 2016-06-28 19:29:18 · 486 阅读 · 0 评论