私はプログラミングが初めてで、StackOverflow の原因を自分自身に教えようとしています。ループをいじってエラーを引き起こしましたが、テストしたフォークボムのコードではエラーは発生しませんでした。どうしてこれなの?
public class ForkBomb
{
public static void main(String[] args) throws java.io.IOException
{
while(true)
{
Runtime.getRuntime().exec(new String[]{"java", "-cp", System.getProperty("java.class.path"), "ForkBomb"});
}
}
}
これにより、スタック オーバーフローは発生しません。なんで?しかし、これは1つを引き起こします:
public class WhileBomb
{
public WhileBomb()
{
while (true)
{
new WhileBomb();
}
}
public static void main(String[] args) throws java.io.IOException
{
WhileBomb goodBye = new WhileBomb();
}
}