- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要更改方法 getMessage() 的返回消息,
例如,我有一个 ArithmeticException,当我写时:
try{c=a/0;}
catch(ArithmeticException excep){System.out.println( excep.getMessage() );}
然后我执行以下代码:/by zero。
因此,我想通过覆盖 getMesage 方法来更改此结果。
我创建了一个名为 MyException 的新类,它继承自 ArithmeticExceprtion 并重写了方法 getMessage,然后我已将上一个代码中的异常类型从 ArithmeticException 更改为新名称类 MyException:
public class MyException extends ArithmeticException{
@override
public String getMessage(){
retun "new code message";}
}
我已经更改了第一个代码,我写了:
try{c=a/0;}
catch(MyException excep){System.out.println( excep.getMessage() );}
当我执行此代码时,我收到了相同的错误消息,就好像我没有捕获异常一样:
Exception in thread "main" java.lang.ArithmeticException: / by zero
at main.test.main(Test.java:33)
所以,我的问题是:如何更改方法 getMessage() 的消息?
最佳答案
c=a/0
总是抛出 ArithmeticException
因为它是这样实现的。
如果您编写自己的除法函数,该函数在除以 0 时抛出 MyException
那么您实际上可以捕获它:
float division(float a, float b) {
if(b == 0)
throw new MyException();
return a/b;
}
...
try {
c = division(a, b);
} catch(MyException e) {
System.out.println(e.getMessage());
}
关于java - 如何更改Exception.getMessage()的返回消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26807684/
我想知道使用 GetMessage 与 GetMessages 逐一获取消息的开销是多少?我应该始终使用 GetMessages(32) 吗?它比 GetMessage() 有什么优势吗? 最佳答案
我想知道使用 GetMessage 与 GetMessages 逐一获取消息的开销是多少?我应该始终使用 GetMessages(32) 吗?它比 GetMessage() 有什么优势吗? 最佳答案
Like in this picture 我知道它们都可以正常工作,但我只是想知道它们之间有何不同? PS:我是初学者。 最佳答案 A LogEvent可以同时包含消息和异常。如果您使用第一种形式:
我观察到这两种说法都是有效的。与第二个语句相比,第一个语句中记录的额外内容是什么? 最佳答案 第一个还记录原始异常(和堆栈跟踪),第二个仅记录消息。 因此,第一个语句中记录的“额外内容”是原始异常。这
我的问题是:用 getMessage 或 toString 或两者都记录更好吗?考虑到开源引发的错误。看到评论中的问题,但没有得到答案。也许我错过了什么?不要介意记录其中之一的小性能影响,但除非有充分
当针对返回 null 的 NullPointerException 引发时,我在 exception.getMessage() 方法中遇到问题。 如何覆盖基本 Exception.getMessage
如何让 MyException 和 MyRuntimeException 使用相同的自定义 getMessage() 实现? 由于 Java 没有多重继承,我不知道该怎么做。目前我在两个类中都有重复的
public class TestException extends Exception { public TestException() { super("Test
我有一个串行设备,可以传输多种类型的消息作为应答。每个消息头代表消息类型。每种消息类型都有其一组字段。我永远不知道我会收到哪种消息类型。 在我的代码中,每种消息类型都代表类。借助 getMessage
这个问题已经有答案了: Can the HWND from CreateWindow/CreateDialog be GetMessage'd from another thread? (7 个回答)
多年来,我在各种不同的程序中使用了以下功能。它一直没有错误。直到现在,我第一次尝试让它针对 64 位代码工作。 我尝试逐行执行代码...首先我执行 something_done = TRUE; 这行(
如果 GetMessage(...) 失败,消息是否不会从消息队列中删除?我问是因为当我有以下循环时,我最终会进入一个无限循环,试图一遍又一遍地处理相同的消息: while( GetMessage(
我有一个应用程序,第二个线程在循环中调用 GetMessage()。在某些时候,第一个线程意识到用户想要退出应用程序并通知第二个线程它应该终止。由于第二个线程卡在 GetMessage() 上,因此程
我有这些类(class): public class NegativeNumberException extends Exception{ NegativeNumberExceptio
当我在 php 中捕获异常并尝试输出一些详细信息时,getMessage() 总是不返回任何内容。如果我执行 var_dump(),我会看到我想要显示的消息。我做错了什么?
嗨,我有下面的伪代码抛出这样的异常 throw new MyException("Bad thing happened","com.stuff.errorCode"); 其中 MyException
我需要更改方法 getMessage() 的返回消息, 例如,我有一个 ArithmeticException,当我写时: try{c=a/0;} catch(ArithmeticException
我试图捕获异常然后将其显示在 JTextArea 中,但我得到了 null... 这里是: } catch (Exception rwe) { // System.
使用 BitmapFactory.decodeStream 函数,我得到了以下异常 02-22 13:24:34.129: W/System.err(7927): java.io.FileNotFou
我有以下代码 SendApp,点击按钮[X]时,执行以下代码 HWND pHWndReceiveApp = FindWindowA(NULL, "ReceiveApp"); if (NULL
我是一名优秀的程序员,十分优秀!