1
24
改为尝试扩展方法:
这允许您添加静态扩展/实用程序方法,但您仍然需要imyinterface实现的实例。 静态方法不能有接口,因为它没有意义,它们是没有实例的实用方法,因此它们没有真正的类型。 |
2
7
不能继承静态方法。您的代码不会以任何方式编译,因为这样接口就不能有静态方法。 引用自 littleguru :
|
3
3
不久前我还尝试在一个接口上设置一个静态方法,现在还不知道为什么。我做了这个书签,所以它可能有帮助: |
4
3
如果只是在类型名之后,则可以执行以下操作:
|
5
2
声明一个
一
|
6
1
答案是一个合格的“不是真的,但有点”。可以为给定接口的所有实现者提供静态扩展方法,然后可以从属性或其他方法中的实现者调用该方法。例如:
这里我们有一个接口(i),它定义了我们关心的属性,还有一个静态扩展方法(getClassName),该方法应用于它类型的所有成员,它完成了获取所需信息的繁重工作。我们有一个实现i接口的类(示例),因此当我们调用在示例实例中传递的静态助手类时,它会对其运行静态方法。不幸的是,将方法本身中的类型T作为变量直接引用是无效的,您必须将实例传递到应用程序中。 |
7
0
可以将类名定义为特定类的属性。这是在.NET中存储元数据的首选方法。这样就可以查询给定类的属性,而不需要实例。 |
Gabe Tucker · 无法在golang中分配接口对象指针 2 年前 |
randomDud · C#从另一个接口重写接口方法 2 年前 |
evilsushi · C#接口不允许成员类满足要求 6 年前 |