方法区和运行时常量池溢出由于运行时常量池是方法区的一部分,因此这两个区域的溢出测试就放在一起进行。前面提到JDK 1.7开始逐步“去永久代”的事情,在此就以测试代码观察一下这件事对程序的实际影响。String.intern()是一个Native方法,它的作用是:如果字符串常量池中已经包含一个等于此S...
分类:
其他好文 时间:
2014-09-24 11:49:36
阅读次数:
272
java内存分类:栈内存和堆内存 堆内存:方法区和堆内存,其中方法区是作为堆内存的一个逻辑区域,又称为非堆,目的是与java堆内存区分开来。方法区和堆内存是所有线程共享的的区域。 其中栈内存又分为:虚拟机栈,本地方法栈,程序计数器 虚拟机栈:描述java方法的内存模型,在执行java方法...
分类:
编程语言 时间:
2014-09-23 00:18:03
阅读次数:
289
(一)java 静态代码块 静态方法区别
一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用
比如main方法就必须是静态的 这是程序入口
两者的区别就是:静态代码块是自动执...
分类:
编程语言 时间:
2014-09-21 13:34:00
阅读次数:
189
本文演示,一个简单的多线程实例,并简单分析一下线程。
编程多线程时,一般步骤:
1)继承Thread函数。
2)覆盖run函数。
注意:1)main函数为主线程,main里面存放的是主线程的执行代码;
Demo1为子线程,里面的run函数里面存放的是子线程需要执行的代码;其中,本文中主线程和子线程执行的优先级是一样的。
2)启动线程必须用start()启动,而不能直接调用run方法。
区别:①start() :开启线程,并执行run方法;(start会调用底层开启线程,Java本身不会开启一个线程,sta...
分类:
编程语言 时间:
2014-09-17 15:18:22
阅读次数:
292
《深入理解java虚拟机》一书中介绍到jvm的内存溢出情况,对理解jvm的自动内存管理机制有一定帮助,下面通过几个实例来进行说明。 java虚拟机的规范描述中,除了程序计数器外,java堆,虚拟机栈,本地方法区等运行时区都会发生outOfMemoryError的可能。 《1》java堆溢出 ...
分类:
其他好文 时间:
2014-09-16 20:23:11
阅读次数:
187
一:Java技术体系模块图二:JVM内存区域模型1.方法区 也称"永久代” 、“非堆” ,"perm", 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB,可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方....
分类:
其他好文 时间:
2014-09-12 11:31:43
阅读次数:
191
Apple官方的文档为生成一个UIImage对象提供了两种方法加载图片:1.imageNamed,其参数为图片的名字;2.imageWithContentsOfFile,其参数也是图片文件的路径。那么两种有什么区别吗?肯定是有的。根据Apple的官方文档:imageNamed:这 个方法用一个指定的...
分类:
其他好文 时间:
2014-09-09 21:22:39
阅读次数:
184
在本文描述它们的区别之前,先来了解一下JVM运行时数据区的内存模型。 《深入JAVA虚拟机》书中是这样描述的:JVM运行时数据区的内存模型由五部分组成: 【1】方法区 【2】堆 【3】JAVA栈 【4】PC寄存器 【5】本地...
分类:
其他好文 时间:
2014-09-09 13:54:19
阅读次数:
201
2014年8月29日参考书籍:深入理解java虚拟机我们可以用javap-verbose字节码来直观的查看字节码文件,参考我在《常量池》中的描述,很容易就可以看得懂javap结果中的常量池。那么方法区呢?应该怎么看?这部分在我的参考书籍中有详细的描述,下边,我总结性的描述一下。为了能够..
分类:
编程语言 时间:
2014-09-09 13:33:39
阅读次数:
278
在加载阶段主要用到的是方法区:方法区是可供各条线程共享的运行时内存区域。存储了每一个类的结构信息,例如运行时常量池(Runtime Constant Pool)、字段和方法数据、构造函数和普通方法的字节码内容、还包括一些在类、实例、接口初始化时用到的特殊方法。如果把方法的代码看作它的“静态”部分,而...
分类:
其他好文 时间:
2014-09-09 11:52:08
阅读次数:
201