A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 韩俊 中级黑马   /  2012-12-2 18:04  /  1055 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


public interface Imyinterface
{
void testMethod(); //我把这一句注释掉,一样可以有同样的结果
}
class InheritInterface : Imyinterface
{
public void testMethod()
{
Console.WriteLine("123");
}
}
class Program
{
static void Main(string[] args)
{
InheritInterface IInterface = new InheritInterface();
IInterface.testMethod();
Console.Read();
}
}
声明接口时就算没有方法testMethod这个成员也有同样的结果,那为什么不把void testMethod(); 这句注释掉

2 个回复

倒序浏览
可以注释掉。接口只是制定类的标准行为,但是不负责实现这些行为。继承自这个接口的类必须实现接口所规定的行为,除此之外,类还可以有自己附加的行为,比如多实现一个方法。如果你注释掉那行代码后,相当于InheritInterface类继承自一个空接口,没有必须要实现的行为,但是可以自己添加一个testMethod()方法。
回复 使用道具 举报
意义不一样
注释前是实现了接口定义的方法
注释后就是InheritInterface继承了空接口,在InheritInterface类中定义了方法testMethod,和不继承接口一样
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马