You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

实现独立类库中定义的接口时修改实现方法名无报错问题咨询

问题原因

这是Visual Basic(VB)语言本身的接口实现机制的正常设计,你认知中「接口实现的方法名必须和接口定义名称匹配」是C#等其他.NET语言的隐式接口实现规则,不适用于VB。

核心规则说明

在VB中,类方法和接口成员的映射关系完全由方法声明末尾的Implements 接口名.接口成员名子句显式绑定,类本身的方法名称不需要和接口成员名称一致:

  • 只要你保留了Implements InterfaceHolder.IMaths.ADD子句,无论你把类中的方法名ADD改成任何其他合法名称,编译器都会认为你已经正确实现了IMaths接口的ADD方法,不会抛出错误。
  • 只有当你没有为接口的所有成员提供对应的Implements绑定,或者Implements子句指定的接口成员签名不匹配时,编译器才会报错。

示例:以下代码是完全合法的VB语法

Imports MyInterface
Public Class MathOperations
    Implements InterfaceHolder.IMaths
    ' 类方法名和接口方法名完全不同,依然属于合法实现
    Public Function CalculateSum(a As Integer, b As Integer) As Integer Implements InterfaceHolder.IMaths.ADD
        Return a + b
    End Function
End Class

额外注意

你原来的类库B代码中,Return a + b之后的Throw New NotImplementedException()是不可达代码,永远不会执行,可以直接删除。

内容的提问来源于stack exchange,提问作者Sougata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 21:12:04