这段代码到底意味着什么?

时间:2015-01-16 14:03:22

标签: java try-catch parseint

我只是不确定这部分代码的含义。

try {
    startGame(Integer.parseInt(clickedButton.getLabel()));
} catch (Exception ex) {
    Logger.getLogger(JavaGame.class.getName()).log(Level.SEVERE, null, ex);

2 个答案:

答案 0 :(得分:1)

Integer.parseInt()接收String并返回int。因此该按钮的标签必须是包含数字值的String。方法startGame必须使用int来了解要开始的游戏。如果标签为 NOT 一个数字,则会通过抛出catch进入NumberFormatException块。

catch部分log4j将输出到日志文件和/或控制台(取决于配置),但有例外。

答案 1 :(得分:0)

如果Integer.parseInt()无法转换clickedButton的Label中的字符串,那么它将引发错误。

然后,try catch将捕获该错误,并创建一个严重级别的日志消息,其中包含已发生的堆栈跟踪。

它引发了一个异常,因为clickedButton的Label不是数字。

相关问题