最简单的:
public class TestStackOverflowError {
TestStackOverflowError ts = new TestStackOverflowError();
public static void main(String[] args) {
TestStackOverflowError ts = new TestStackOverflowError();
}
}
无意识造成的(tij11):
public class InfinitRecursion {
public String toString(){
return "InfinitRecursion address:" +this +"\n";
//return "InfinitRecursion address:" +super.toString() +"\n";
}
public static void main(String[] args) {
InfinitRecursion ir = new InfinitRecursion();
System.out.println(ir);
}
}
自动忽略(java puzzle 49?)
public class Reluctant {
private Reluctant internalInstance = new Reluctant();
public Reluctant(){
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Reluctant rel = new Reluctant();
}
}
一道笔试题:
public class Device {
private View v = new View();
public void hehe(){
v.notice();
}
}
public class Moter extends Device {
public int getState(){
}
public void haha(){
hehe();
}
}
public class View {
private Moter m ;
public void notice(){
m.getState();
}
}
本文提供了几个Java代码示例,包括简单的递归错误演示、无限递归实例以及对象自我引用导致的问题。通过这些示例,读者可以了解如何避免常见的编程陷阱,并理解递归和对象初始化过程中的注意事项。
1979

被折叠的 条评论
为什么被折叠?



