只考虑虚拟机结构化溢出
1. 堆溢出,数组扩容,丢弃
设置下-Xms8m -Xmx8m
java.lang.StringBuilder stringBuilder = new java.lang.StringBuilder();
for(;;){
stringBuilder.append(" a ");
}
2.方法区溢出,永久区
设置下-XX:PermSize=2M -XX:MaxPermSize=2M
public class test {
public static final java.util.HashMap<String,String> aa = new java.util.HashMap<String,String>();
public static void main(String[] args) {
new test();
}
3.栈溢出,帧栈,方法栈,一个帧栈对应一个方法。方法栈是一串。
public void doIterator(){
doIterator();
}
public static void main(String[] args) {
new test().doIterator();