- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个串行设备,可以传输多种类型的消息作为应答。每个消息头代表消息类型。每种消息类型都有其一组字段。我永远不知道我会收到哪种消息类型。
在我的代码中,每种消息类型都代表类。借助 getMessage 函数返回消息的最佳方式是什么?我可以返回将保存具体消息的消息接口(interface)或父消息类。但这设计真的好吗?
最佳答案
使用一个接口(interface)
来概括几个结构相似的类
是一个很好的设计。
我猜你的结构如下:
public interface Message {
public String getType();
}
然后是几个实现,例如
public class FooMessage implements Message {
public String getType() { return "Foo"; }
public String getFooField() { return fooField; }
/* ... */
}
因此您的 getMessage()
方法如下所示:
public Message getMessage() {
Message message = /* get the next message */;
return message;
}
这将是解决该问题的好方法。
关于java - getMessage 的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18958134/
我想知道使用 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
我是一名优秀的程序员,十分优秀!