关于Java内存模型的一个简单介绍和总结,希望能对大家有所帮助。...
分类:
其他好文 时间:
2014-08-11 21:31:12
阅读次数:
190
13年初整理的一个关于MapReduce的简单介绍和总结,希望对大家有所帮助,同学欢迎交流JVM、Spark、Hadoop等技术。...
分类:
其他好文 时间:
2014-08-11 21:29:42
阅读次数:
251
1、Java的运行环境中,String是什么编码?使用java做程序设计语言,字符编码是和jvm相关的,和操作系统无关。java默认的编码是jvm在安装的时候就确定了的,它是根据你的系统的环境确定并默认的。我们可以通过java的Charset类的defaultCharset()方法来获取它默认的字符...
简单讲一下各个区域
程序计数器:当前线程所执行的字节码的行号指示器,循环,线程恢复等基础功能依赖这个计数器完成(线程私有,每一个线程都会有自己单独的一个计数器)。
本地方法栈:与java虚拟机栈相似,不过执行的是native方法。
方法区(包含运行时常量池):各个线程共享的区域,它用于已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据。
java虚拟机栈:也是线程私有的,生命周期与线程相同 每个方法执行时都会创建一个栈帧(一会儿会详细讲到)结构是栈结构,先进后...
分类:
编程语言 时间:
2014-08-11 17:54:52
阅读次数:
315
出现java.lang.UnsupportedClassVersionError错误的原因,是因为我们使用高版本的JDK编译的Javaclass文件试图在较低版本的JVM上运行,所报的错误。因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。这样,低版本的JVM无法解释执行这个.cla..
分类:
编程语言 时间:
2014-08-11 15:18:22
阅读次数:
204
起始知识:Java标准的PropertyEditor的核心功能是将一个字符串转换为一个Java对象,以便根据界面的输入或配置文件中的配置字符串构造出一个JVM内部的java对象。如何注册自定义的属性编辑器:1、实现PropertyEditor接口或者继承PropertyEditorSupport类2...
分类:
编程语言 时间:
2014-08-11 14:52:02
阅读次数:
291
对于JAVA而言,一般一个应用程序只有一个进程——JVM。除非在代码里面另外派生或者开启了新进程。而线程,当然是由进程开启的。当开启该线程的进程离开时,线程也就不复存在了。所以,对于JAVA而言,线程是完全可以由自己的API自由产生。例如new Thread().但是进程就不同,必须通过调用OS的A...
分类:
编程语言 时间:
2014-08-11 11:33:52
阅读次数:
240
Java Instrumentation (参考:http://www.ibm.com/developerworks/cn/java/j-lo-jse61/)简介:使用Instrumentation,开发者可以构建独立于应用程序的代理程序,用来检测和协助运行在JVM上的程序,甚至能够替换和修改某些类...
分类:
编程语言 时间:
2014-08-11 02:48:11
阅读次数:
241
从Java平台的逻辑结构上来看,我们能够从下图来了解JVM:从上图能清晰看到Java平台包括的各个逻辑模块,也能了解到JDK与JRE的差别对于JVM自身的物理结构,我们能够从下图俯视一下:对于JVM的学习,在我看来这么几个部分最重要:Java代码编译和运行的整个过程JVM内存管理及垃圾回收机制以下将...
分类:
其他好文 时间:
2014-08-10 23:49:50
阅读次数:
253
随着应用规模的逐渐增大,依赖的jar包数量也大幅增加,其中不乏多余的,用不到的jar包,占用了大量的宝贵空间。通过loosejar这个工具,便可轻松找到“滥竽充数”的jar包了~
loosejar的工作原理是利用classloader。因为应用在运行的时候,用到哪个类,classloader就会把这个类的.class文件加载到jvm中,然后生成一个class对象,然后再利用反射就可以执行这个类的...
分类:
其他好文 时间:
2014-08-10 21:43:01
阅读次数:
317