为什么这个不能编译以及如何让它在 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/