奇怪的问题,实现一个接口,但是可以将接口的方法定义成了Protected!

今天要在处理一个问题的时候,查看了一个类的源码,发现其实现了ICallbackEventHandler接口,但是它的方法声明中确是Protected的,很是奇怪,而我发现如果实现一个接口的时候,将接口中的方法声明为Protected是不能编译的.反编的源码原型:

public abstract class ASPxWebControl : ICallbackEventHandler

......省略其它定义

protected virtual string GetCallbackResult();

 protected virtual void RaiseCallbackEvent(string eventArgument);


喵喵时光机
浏览 635回答 2
2回答

猛跑小猪

不光是接口的问题,这个虚拟方法没有实现内容也是编译不过去的。除非将 virtual 换成 abstractprotected virtual string GetCallbackResult();严重怀疑这个代码是否可以编译通过。或者你这个代码不是C#的语法,是不是C++的?C++好像允许这样写。
打开App,查看更多内容
随时随地看视频慕课网APP