为了账号安全,请及时绑定邮箱和手机立即绑定

默认情况下接口不是公开的吗?

默认情况下接口不是公开的吗?

C#
温温酱 2022-11-22 15:37:18

我记得默认情况下接口是公共的。我错了吗?当我试图从一个接口实现一个“公共静态”方法时。VS 告诉我接口中的方法比“公共静态”方法更难访问。当我将 public 添加到界面时,它修复了。默认情况下接口不是公开的吗?


interface IDoubleFloatEventInvoker {

 void AddListener(EventName eventName, UnityAction<float, float> unityAction);

}


public static void AddInvoker(EventName eventName, IDoubleFloatEventInvoker invoker)

{

    foreach (UnityAction<float, float> listener in doubleFloatListeners[eventName])

    {

        invoker.AddListener(eventName, listener);

    }

    doubleFloatInvokers[eventName].Add(invoker);

}

“VS 说 IDoubleFloatEventInvoker 比 AddInvoker 函数更难访问”


查看完整描述

1 回答

?
婷婷同学_

TA贡献1578条经验 获得超8个赞

internal接口成员是公共的,但如果未设置可访问性,接口本身将默认为,就像类一样。

就公开成员而言,这并不完全是“默认情况下”:它们始终是公开的,并且尝试对它们设置可访问性将导致编译错误。


查看完整回答
反对 回复 2022-11-22
  • 1 回答
  • 0 关注
  • 6 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信