当前位置:编程学习 > C#/ASP.NET >>

C# 接口 IdataObject

接口只包含只有方法,属性,索引器(有参属性),事件四种成员。方法的实现是在实现接口的类中完成的。

关于IdataObject 接口:

idataobject idata = clipboard.getdataobject();

这是getdataobject检索当前剪贴板上的数据。

为何要把idataobject当成一个接口。

接口是为了编程开发方便,这里可以直接拿过来使用。

说明这idataobject里面的方法已经实现,是希望程序员继续写里面的内容?

请对这个有了解的人提供一些资料。

谢谢!   

补充:希望能针对idataobject 这个接口举例说明!

答案:接口要在函数中才能看到其效果,例如我的项目有个公用库里边有个处理IdataObject 数据的函数

public static Image GetImage(IdataObject  idata)

{

    .......

}

然后你就可以

idataobject idata = clipboard.getdataobject();

Image img=GetImage(idata);

 

你会问为什么还要用接口那么多此一举,其实微软的框架设计不是单纯为了让你实现功能,还要给你开发者有足够的接口编写扩展,例如我是WPS的设计师,我们WPS Word里边需要我的自定义剪贴板然后我实现了idataobject接口,编写出WPSclipboard,然后显示图像的功能块既能接受Windows剪贴板的数据也能接受自带剪贴板的数据

 

//显示Windows剪贴板数据

idataobject idata = clipboard.getdataobject();

Image img=GetImage(idata);

//显示WPS剪贴板的数据

idataobject idata = WpsClipboard.getdataobject();

Image wimg=GetImage(idata);

 

一般程序的确对接口比较冷,如果涉及到架构设计之类的就比较常用,楼主有兴趣的话去买一本《C#设计模式》里边的工厂方法会让你有比较好的理解

............接口不等,需要请教职业劳动员! 希望给个好评价!谢谢 
微软的实现是最基本的就用,接口定义的这一个规范,是为了让我们在复杂的应用中能更好的应用,如果微软一开始就只提供一个clipboard.getdataobject();我们在复杂的应用环境会很痛苦,比如举个例子,asp.net中Gridview控件,如果输出的样子不是我们想的样子怎么办,我要他的功能,但是还要改写其中的一些东西,接口在这里也是这样,给了我们更多的发挥空间

一个接口可以从三方面去考察:
制定者(或者叫协调者),实现者(或者叫生产者),调用者(或者叫消费者)。
接口本质上就是由制定者来协调实现者和调用者之间的关系。
所以通常说的“面向接口编程”可以理解为:
只有实现者和调用者都遵循“面向接口编程”这个准则,制定者的协调目的才能达到。

其实,接口最大的作用便是,定义规范,通过不同的实现便于扩展,维护,协作,让你的代码更灵活

interface 定义规范
class 编码实现
优点:1。便于程序规范化设计
  2。便与团队协同开发
  3。便于转换为com组件、activex组件等
  4。方便的代码复用,无需了解技术细节。
缺点:1。接口协同工作时,设计不良会出现难以发现的bug,因为你只遵循接口规范,不知道实现的技术细节。

5、对外只公开接口,层与层之间通过接口通信,做到了设计模式和框架模式的原则

6、弥补JAVA的不支持多继承性,如果让一个类去继承另一个类、并且实现一个接口的话,
这不就达到了多继承的效果吗。

 

上一个:新手怎么学C#
下一个:C# 判断问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,