interface - 什么是空接口(interface)用于

标签 interface

我在看nServiceBus,从这个接口(interface)过来

namespace NServiceBus
{
    public interface IMessage
    {
    }
}

空接口(interface)有什么用?

最佳答案

通常它是一个类的使用信号。您可以实现 IMessage 来表示您的类是一条消息。然后其他代码可以使用反射来查看您的对象是否打算用作消息并采取相应的行动。

这是在 Java 有注解之前大量使用的东西。在 .Net 中,为此使用属性更简洁。


@Stimpy77 谢谢!我没有那样想过。 我希望您允许我以更笼统的方式重新表述您的评论。

注释和属性必须在运行时使用反射进行检查。可以在编译时使用编译器中的类型系统检查空接口(interface)。这根本不会在运行时带来任何开销,因此速度更快。

关于interface - 什么是空接口(interface)用于,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41478740/

相关文章:

用于函数接口(interface)的 Python 库?

c#泛型接口(interface)解决方案

通过对象调用Java接口(interface)方法

戈朗 : Can you type a returned interface{} in one statement?

c# - 我如何判断我的泛型类型是否支持某个接口(interface)并为函数来回转换到该接口(interface)?

android - 如何在接口(interface)类中初始化 TypeFace

c# - 可选参数和接口(interface) - 意外结果

Java 面向对象编程多个类实例

c# - 设计流畅的构建器以在 C# 中创建对象图

java - 不同 Java 类型之间的转换器