java - java中如何编译异常

标签 java exception try-catch

为什么这个不能编译以及如何让它在 java 语言中编译? try/catch block 的目的不是为了获取潜在的编译错误吗?

try 
{
  int b = "HI";
}
catch(Exception e)
{
  System.out.println(e);
  System.out.println('success');
}

我收到此消息而不是预期结果:

mainTest.java:19: 错误:类型不兼容:字符串无法转换为 int int b =“你好”;

最佳答案

1- b 是一个 Integer,您不能为其分配 String 文字。 这是编译时错误,而不是运行时错误(异常不处理编译错误)

2- catch block 用于拦截 try 代码块抛出的任何异常,但它不会。

举个例子:

try {
    int a = 5;
    int b = 0;
    int c = a/b; // Division by 0, throws an ArithmeticException
}
catch (ArithmeticException e) {
    e.printStackTrace();
}

关于java - java中如何编译异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34124673/

相关文章:

javascript - Javascript 是否会为未处理/未捕获的异常触发事件?

java - 我应该为 HashMap.get() 使用什么 Try/Catch block ?

javascript - 使用 Javascript 格式化 HTML 字符串以正确显示

java - (J2me) 流作为缓冲区?

java:抛出多个异常

java - 添加 Maven 支持后 JavaFX 项目出现问题(应用程序启动方法异常)

java - head=head.getNext() 和 head=current.getNext() 有什么区别?

java - 在加载 Java 小程序期间记录丢失的 jar 文件

c++ - 将构造函数指定为 noexcept 是否会隐式导致在 C++ 中使用 new 运算符的 nothrow 版本?

python - 如何确保在调试期间关闭 sqlite 数据库连接?