当前位置: 首页 > 面试题库 >

在Java中尝试/捕获堆栈溢出?

隆谦
2023-03-14
问题内容

您可以尝试/捕获Java中的堆栈溢出异常吗?它似乎在向任一方向投掷自己。当程序溢出时,我想“惩罚”该值。


问题答案:

似乎可以工作:

public class Test {

    public static void main(String[] argv){
        try{
            main(null);
        }
        catch(StackOverflowError e){
            System.err.println("ouch!");
        }
    }

}


 类似资料:
  • 我读了一些关于如何优化正则表达式的文章,但是没有一个答案(更少的组,使用{X,Y}而不是*)似乎阻止了我的正则表达式获得堆栈溢出错误。 我正在尝试通过文件进行动态搜索。假设我正在一个相当大(2-4MB)的文件中搜索“我打赌你找不到我”。我的正则表达式生成器将生成正则表达式: 这个正则表达式的想法是,无论单词之间有什么字符或空格,它都能找到准确的短语。然而,当我尝试使用: 我遇到堆栈溢出错误。我知道

  • 我基于Maged M.Michael和Michael L.Scott的《简单、快速、实用的非阻塞和阻塞并发队列算法》中指定的算法实现了一个无锁队列(有关算法,请跳到第4页) 我在上使用了原子操作,如等。 当只在一个线程中使用队列时,一切都很好,但是当从不同的线程中使用它时,我会得到堆栈溢出异常。 不幸的是,我无法追查问题的根源。似乎当一个<code>shared_ptr</code>超出范围时,它

  • im执行此任务,并不断在线程“main”java.lang.RuntimeException中获得异常:Stack.pop(postfix.java:74)、postfix.eval(postfix.java:221)和postfix.main(postfix.java:112)处的堆栈下溢 我不知道为什么我看着堆栈并且写得正确,我不明白为什么它在(3*4)/5时弹出的问题

  • 问题内容: 我正在运行一个用Java在Eclipse中编写的程序。对于很大的输入,该程序具有很深的递归级别。对于较小的输入,程序运行正常,但是在给出较大的输入时,出现以下错误: 可以通过增加Java堆栈大小来解决此问题,如果可以,那么如何在Eclipse中做到这一点? 更新: @乔恩·斯基特 该代码递归地遍历解析树以建立数据结构。因此,例如,代码将使用解析树中的一个节点来做一些工作,并在该节点的两

  • 我有一个执行快速排序的应用程序。在我开始给它一些更大的数字(我第一次得到它是10000000)之前,它工作得很好。我知道是由递归引起的,但我不明白为什么我的应用程序会因此而崩溃。如有任何建议,将不胜感激。这是我的密码:

  • 我正在使用一个正则表达式从任意长的输入字符串中提取键值对,并且遇到了这样的情况:对于具有重复模式的长字符串,它会导致堆栈溢出。 KV解析代码如下所示: 一些虚构的输出示例: 我显式地将generic放在上面,而不是在解析之前检查最大字符串长度的hacks(例如)。 我能想出的最粗俗的解决方法,一个真正的反模式,是 有趣的是,它在我试过的几次运行中都起作用了,但它不是一个值得推荐的有品位的东西。:-