这是我正在尝试做的一个例子。由于某种原因,Go无法识别该方法
TheMethodIWantToCall
package somePackage
import (
"path/to/dependency/A"
"path/to/dependency/B"
)
type myClassConcrete struct {
depA *dependency.A
depB *dependency.B
}
func NewMyClassConcrete(a *dependency.A, b *dependency.b) MyClass {
return &myClassConcrete{
depA: a,
depB: b,
}
}
func (myClass myClassConcrete) SomeMethod(arg1 SomeType1, arg2 SomeType2) {
myClass.depB.TheMethodIWantToCall()
}
以下是依赖项B的样子:
package someOtherPackage
type ServiceB interface {
TheMethodIWantToCall() WhateverReturnType
AnotherMethodICouldCall() SomeReturnType
}
ServiceB正确实现了所有方法。
我是否缺少一些规则或命名约定,阻止我在另一个包/类实现的上下文中使用ServiceB中的方法?