4个回答
展开全部
讲讲我自己的体会吧:
c#里的接口有何不可替代的作用?仅仅抽象了某一个类的共同特点?
我试了例子,将class A :ICloneable的 :ICloneable去掉,照样是可以实现的。那到底有什么用呢?我总结接口使用有两个原因:
1:自己设计的原因,有了规范,别人用你的接口就能更容易了解你的系统是怎么合作的
2:别人如果设计了接口,比如Array.Sort(array,Icompare);别人的参数既然是接口,你要用这个函数,你的类必然也要实现这个接口。记住:接口是和类向对应的,不是方法,接口的具体化便是类。但是接口规定了类要实现的方法。
比如:public class ValueCompare : IComparer
{
public int Compare(Object x, Object y)
{
return (((SingleCard)x).Value - ((SingleCard)y).Value);
}
}
c#里的接口有何不可替代的作用?仅仅抽象了某一个类的共同特点?
我试了例子,将class A :ICloneable的 :ICloneable去掉,照样是可以实现的。那到底有什么用呢?我总结接口使用有两个原因:
1:自己设计的原因,有了规范,别人用你的接口就能更容易了解你的系统是怎么合作的
2:别人如果设计了接口,比如Array.Sort(array,Icompare);别人的参数既然是接口,你要用这个函数,你的类必然也要实现这个接口。记住:接口是和类向对应的,不是方法,接口的具体化便是类。但是接口规定了类要实现的方法。
比如:public class ValueCompare : IComparer
{
public int Compare(Object x, Object y)
{
return (((SingleCard)x).Value - ((SingleCard)y).Value);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
接口用于封装,最简单。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |